使用 typescript-eslint 在 VSCode 编辑器中未显示打字稿错误

Eli*_*eil 4 typescript eslint visual-studio-code

我的问题是我无法使用 eslint 和 @typescript-eslint(在 VSCode for MacOs 上)在编辑器中显示打字稿错误。

显示 Eslint 错误,但未显示此屏幕截图(tsx 文件)中显示的类型错误 未显示类型错误的示例

此处显示未使用变量的问题,但未显示调用时的类型错误typedFunction。如果我tsc在终端中运行,则会引发错误。

Eslint 扩展安装在我的 VSCode 编辑器中。这是我的 .eslintrc :

{
  "parser": "@typescript-eslint/parser",
  "extends": [
    "plugin:@typescript-eslint/recommended",
    "react-app",
    "prettier",
    "prettier/@typescript-eslint",
    "prettier/react"
  ],
  "plugins": [
    "import",
    "prefer-object-spread",
    "prettier",
    "react",
    "@typescript-eslint"
  ],
  "env": {
    "browser": true,
    "es6": true,
    "node": true
  },
  "globals": {
    "alert": true,
    "document": true,
    "localStorage": true,
    "navigator": true,
    "window": true,
    "HTMLElement": true
  },
  "rules": {
    "prettier/prettier": "error",
    "import/extensions": 0,
    "import/no-extraneous-dependencies": [
      "error",
      {
        "devDependencies": true,
        "optionalDependencies": false,
        "peerDependencies": false
      }
    ],
    "import/no-unresolved": 0,
    "import/prefer-default-export": 0,
    "prefer-object-spread/prefer-object-spread": 2,
    "react/destructuring-assignment": 0,
    "react/jsx-filename-extension": [1, { "extensions": [".ts", ".tsx"] }],
    "react/no-array-index-key": 2,
    "react/prefer-stateless-function": 0,
    "react/prop-types": 0,
    "react/require-default-props": 0,
    "@typescript-eslint/explicit-function-return-type": 0,
    "@typescript-eslint/explicit-member-accessibility": 0,
    "@typescript-eslint/camelcase": 0,
    "@typescript-eslint/interface-name-prefix": 0,
    "complexity": ["error", 8],
    "max-lines": ["error", 200],
    "max-depth": ["error", 3],
    "max-params": ["error", 4]
  }
}
Run Code Online (Sandbox Code Playgroud)

我尝试删除所有 VSCode 扩展,卸载 VSCode,重新启动计算机,但没有任何效果。我的 VSCode 版本是 1.46.0

小智 6

在 VSC 的扩展面板中,键入“@builtin”并在“功能”部分中查找“TypeScript 和 JavaScript 语言功能”。它很可能是禁用的。启用它并重新启动您的 VSC。正如 Matt Bierner 从这里建议的那样。

  • 我启用了两个打字稿 @builtin 功能,但在悬停时仍然没有显示错误。事实证明,我的 settings.json 中有“typescript.validate.enable”: false,',这就是罪魁祸首。去掉那条线就可以正常工作了... (2认同)