如何修复 Typescript linting 在 VSCode 中不起作用?

Posted

技术标签:

【中文标题】如何修复 Typescript linting 在 VSCode 中不起作用?【英文标题】:How to fix Typescript linting not working in VSCode? 【发布时间】:2021-01-28 11:55:39 【问题描述】:

在我的 settings.json 中,我有:

"eslint.validate": [
    "javascript",
    "javascriptreact",
    "typescript",
    "typescriptreact"
  ]

但我的打字稿支持不起作用。它会在运行时捕获错误,但不会显示红色波浪线(示例如下)。

启用 ESLint 时我也遇到错误,启用 ESLint 时 Prettier 不起作用:

ESLint: Failed to load parser '@typescript-eslint/parser' declared in 'template/.eslintrc.js': Cannot find module 'typescript' Require stack: - /Users/henryboisdequin/Desktop/MyAwesomeProject/node_modules/@typescript-eslint/typescript-estree/dist/parser.js - /Users/henryboisdequin/Desktop/MyAwesomeProject/node_modules/@typescript-eslint/typescript-estree/dist/index.js - /Users/henryboisdequin/Desktop/MyAwesomeProject/node_modules/@typescript-eslint/parser/dist/parser.js - /Users/henryboisdequin/Desktop/MyAwesomeProject/node_modules/@typescript-eslint/parser/dist/index.js - /Users/henryboisdequin/Desktop/MyAwesomeProject/node_modules/eslint/lib/cli-engine/config-array-factory.js - /Users/henryboisdequin/Desktop/MyAwesomeProject/node_modules/eslint/lib/cli-engine/cascading-config-array-factory.js - /Users/henryboisdequin/Desktop/MyAwesomeProject/node_modules/eslint/lib/cli-engine/cli-engine.js - /Users/henryboisdequin/Desktop/MyAwesomeProject/node_modules/eslint/lib/cli-engine/index.j

我该如何解决这个问题?

【问题讨论】:

【参考方案1】:

您可以按照步骤修复打字稿

您还可以尝试检查 TypeScript 服务器日志以了解 TSLint 无法正常工作的原因:

在您的 VS Code 用户或工作区设置中,设置 “typescript.tsserver.log”:“简洁” 打开一个您认为应该启用 TSLint 的 TS 文件。 在 VS Code 命令面板中,运行 TypeScript:打开 TS 服务器日志。

【讨论】:

当我这样做时,Prettier 工作,ESLint 工作在 JS 文件上,但 TS 仍然没有红线。 我添加了一个 .eslintrc.json 但它仍然没有给我打字稿支持,只是告诉我在我的打字稿文件中使用单引号 现在可以了,我重新安装了 VSCode。原来我一开始 ESLint 设置错了谢谢你的帮助【参考方案2】:

解决此问题的方法是按照以下步骤操作:

    关闭 VSCode

    CD 导入应用程序

/Users/<user>/Library/Application\ Support
    查看VSCode文件夹的位置(看看是code/还是.vscode/)
ls
    删除 VSCode 文件夹
rm -rf code/ or .vscode/

    打开 VSCode - 那里应该有你所有的扩展,但是你的主题之类的东西,扩展设置不会被配置 -

    现在一切(扩展设置、主题等)都将被重置

【讨论】:

以上是关于如何修复 Typescript linting 在 VSCode 中不起作用?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Firebase 函数中使用 --fix 修复 Lint 问题

Vue/TypeScript/Linting 排除 .vue 文件

lint 错误阻止做了一些研究,但没有成功

如何自动修复 vuejs 中的 tslint 错误

如何防止 npm run lint 自动修复错误?

如何修复未受保护的 SMS BroadcastReceiver lint 警告