在 Visual Studio Code 中运行的 Angular 应用程序中,TSLint 扩展抛出错误

use*_*050 235 eslint tslint visual-studio-code vscode-extensions angular

我最近开始看到 TSLint 错误。它们看起来像这样:

不使用为“/Users/myname/myproject/client/src/app/likes/likee/likee.component.ts”找到的本地 TSLint 版本。要从当前工作区启用代码执行,您必须启用工作区库执行。

当我打开它们时,我在我的 .ts 文件中看到它们,它在每个 .ts 页面的第一行显示一条黄色波浪线。

我在TSLint网站上看到它说它已被弃用。

问题 1 - 这些错误的原因是什么,为什么我会突然看到它们?

问题 2 - 我应该卸载 Visual Studio Code TSLint 扩展并安装 ESLint 扩展吗?

小智 411

就像@Tu?n Nguy?n描述的那样,您需要:

  1. Ctrl + Shift + P,转到命令面板

  2. 在 VS Code 顶部弹出的输入中,开始输入

    TSLint: Manage workspace library execution"
    
    Run Code Online (Sandbox Code Playgroud)

    并击中Enter键。

  3. 从替换输入的菜单中,选择enable workspace library execution并再次Enter按键。

  • 你好。你能告诉我为什么我突然看到这个吗?我是否应该像文档所说的那样卸载 TSLint 并使用 ESLint?它说它已被弃用。 (21认同)
  • 有没有办法让这个改变变得“粘性”?启用工作区库执行有效,但似乎当我关闭 VS Code 并重新打开同一个项目时,我必须再次启用它。 (9认同)
  • @CollinM.Barrett 从同一菜单中选择“始终启用工作区库执行” (5认同)
  • @user1186050 是的,您应该卸载 TSLint 并使用 ESLint 作为推荐方法。然而,这是显而易见的,因为微软可能已经做了必要的事情来摆脱 TSLint 并将其标记为已弃用。检查我上面的答案:/sf/answers/4570189851/。 (3认同)
  • vscode重启后又显示了。投反对票。 (2认同)

Tuấ*_*yễn 79

您应该转到 VScode 中的命令面板以搜索 TSLint:管理工作区库执行。并启用工作区库执行

  • @user1186050 ctrl + shift + p > TSLint:管理工作区库执行 > Enter > 启用工作区库执行 (10认同)
  • vscode重启后又显示了。投反对票。 (2认同)

Gau*_*pta 46

尽管@Tu?n Nguy?n 给出的答案有效,但不建议这样做。

根据 MS 文档 https://marketplace.visualstudio.com/items?itemName=ms-vscode.vscode-typescript-tslint-plugin,此答案将替换用本地定义的全局 TS lint 配置,可以轻松操作出于安全原因,也不建议这样做。

截屏:

在此处输入图片说明

推荐方法:

根据 MS Docs,https: //code.visualstudio.com/api/advanced-topics/tslint-eslint-migration,最近更新(12/11/2020),您应该从 TSLint 迁移到 ESLint。

这可能是每个人都在寻找修复程序的原因,因为 MS 最近做了一些必要的事情。:)

脚步:

  1. npm install --save-dev eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin (安装 ESlint 和 TSLint)
  2. npx tslint-to-eslint-config(这将安装实用工具并使配置更容易。安装后将创建一个新的.eslintrc.js。也会对.vscode/settings.json进行更改。)
  3. 从 VS Code 中禁用/卸载 TS lint。
  4. 然后,您可以在package.json文件中将脚本作为 -放置"lint": "eslint -c .eslintrc.js --ext .ts <mySrcFolder>"。(这会告诉 ESLint 去寻找 TSLint)

但是,您可能应该更生动地查看链接中的步骤,以便正确并相应地执行步骤。


小智 37

Ctrl+ Shift+P打开命令面板。

在 VS Code 顶部弹出的输入中,写

TSLint: Manage workspace library execution
Run Code Online (Sandbox Code Playgroud)

从替换输入的菜单中,选择

Enable Workspace Library Execution
Run Code Online (Sandbox Code Playgroud)


小智 36

Ctrl+ Shift+转到命令面板P

在 VS Code 顶部弹出的输入中,开始输入

TSLint:管理工作区库执行”并点击Enter.

从替换输入的菜单中,选择启用工作区库执行,然后再次点击Enter


小智 13

  1. 在 Windows 或 Linux 中按Ctrl+ Shift+,在 Mac 上按+ +PCommandShiftP

  2. 类型TSLint:管理工作区库执行

    TSLint:管理工作区库执行

  3. 选择始终启用工作区库执行

    始终启用工作区库执行

    或者您可以保存工作区文件 =>将工作区另存为

    保存工作区


Ali*_*ahi 7

我以这种简单的方式解决了这个问题:

文件 -> 将工作区另存为...

通过保存工作区,vscode 检测一些库并在文件中更好地工作

  • 谢谢!正如其他人建议的那样,我在命令面板上找不到 TSLint 管理工作区,但保存工作区后,它出现并且工作得很好! (2认同)