【问题标题】:Standardjs no-unused-vars while it's usedStandardjs 在使用时没有未使用的变量
【发布时间】:2026-01-19 07:30:01
【问题描述】:

在我的 Typescript React 项目中,我定义了:

export type NavState = { mounted: boolean }

然后在我的组件中我使用了这样的主题:

import { NavState } from '../../models/nav'

class Nav extends React.Component<any, NavState> {
  state: NavState = {
    mounted: false
  }
}

但我的导入中NavState 的红色下划线显示:

'NavState' is defined but never used. (no-unused-vars)standard(no-unused-vars)

在我的package.json 我有这个:

  "standard": {
    "ignore": [
      "node_modules/**",
      "**/__generated__/"
    ],
    "parser": "@typescript-eslint/parser",
    "plugins": [
      "@typescript-eslint"
    ]
  }

而我的 vs-code settings.json 是这样的:

{
  "standard.autoFixOnSave": true,
  "standard.enable": true,
  "standard.run": "onType",
  "standard.validate": [
    { "language": "javascript", "autoFix": true },
    { "language": "javascriptreact", "autoFix": true },
    { "language": "typescript", "autoFix": true },
    { "language": "typescriptreact", "autoFix": true }
  ]
}

为什么 Standardjs 无法理解我使用了类型别名?我该如何解决?

【问题讨论】:

    标签: reactjs typescript visual-studio-code vscode-settings standardjs


    【解决方案1】:

    这应该可以解决问题:

    import { NavState } from '../../models/nav'  //eslint-disable-line
    

    注意导入行的注释

    查看docs了解更多信息。

    【讨论】: