Typescript eslint 禁用 no-unused-vars

问题描述 投票:0回答:8

我正在开发一个 Typescript React 项目,我通常将占位符变量放入代码中,这样一切就都安排好了,直到我开始实现一切。这会导致一堆

eslint no-unused-vars
错误,并使查找真正的错误成为一项挑战。

如何在全局范围内禁用此功能,直到我准备好为止?我使用了

create-react-app my-app --typescript
并且不想弹出该项目,但不知道如何禁用此警告。

我注意到

eslintConfig
中有一个
package.json
部分,所以我尝试关闭那里的错误,但它似乎不起作用,是否有一个命令我需要在编辑
package.json
后运行,或者是我的语法错误?

"eslintConfig": {
    "extends": "react-app",
    "rules": {
      "no-unused-vars": "off"
    }
 },

更新


(删除了

tsconfig.json
参考)

我更新了我的

package.json
并不断收到错误。

"eslintConfig": {
    "extends": "react-app",
    "rules": {
      "@typescript-eslint/no-unused-vars": "off"
    }
  },

我尝试将规则移至项目根目录中的

.eslintrc.json
文件中,但似乎仍然无法将其关闭。

唯一有效的方法是将

// eslint-disable-line @typescript-eslint/no-unused-vars
放在变量后面。

reactjs typescript eslint
8个回答
50
投票

我认为有些混乱。

问题和唯一答案都建议在

tsconfig.json
中放置规则部分。 这是我从未听说过的东西,并且在文档或官方架构中没有提及。

此外,问题是关于禁用 eslint 中的规则,因此规则更改应放入

.eslintrc.json
文件(或问题中考虑的
eslintConfig
中的
package.json
部分)。

但是这是 typescript 和 typescript-eslint 所以规则应该是:

> "@typescript-eslint/no-unused-vars" : "off"

有人链接的答案中提出的 hacky 解决方案需要更改为(请注意,答案是关于 js 的 eslint,而不是 ts)。

/* eslint-disable @typescript-eslint/no-unused-vars */

这些解决方案对我有用...

+-- [email protected]  
+-- @typescript-eslint/[email protected]  
+-- @typescript-eslint/[email protected]  

8
投票

我也有类似的问题。这是我的解决方案:

  1. .eslintrc[.json]
    重命名为
    .eslintrc.js
  2. 在之前的 Json 对象前面添加
    module.exports = 
    。所以
    .eslintrc.js
    看起来像这样:
module.exports = { 
    ...
    "rules": {...},
    ... 
}
  1. 根据您当前的环境设置
    "@typescript-eslint/no-unused-vars"
    规则。这可以通过检查
    process.env.NODE_ENV
    变量来实现。我的选择是在生产中出现错误并在其他情况下收到警告。 该片段如下所示:
module.exports = { 
    ...
    "rules": {
         ...
         "@typescript-eslint/no-unused-vars": process.env.NODE_ENV === "production" ? "error" : "warn"
    },
    ... 
}

8
投票

您可以在package.json文件中添加规则

"eslintConfig": {
  "rules": {
   "no-unused-vars": 0,
   "@typescript-eslint/no-unused-vars": 0
  }
}

4
投票

既然您使用了

create-react-app my-app --typescript
,那么在您的
tsconfig.json
中应该已经为您创建了
my-app/

在您的

tsconfig.json
中,您可以为打字稿编译器添加规则。

{
  "extends": [...],
  "compilerOptions": {
    ...
  },
  "include": [...],
  "rules": {
    ...
    "no-unused-vars": "off"
    ...
  }
}

2
投票

在 eslintrc.json 中添加“规则”,只需将 no-unused-vars 写入 0 即可。

"rules":{
     "no-unused-vars":0
}

0
投票

我在打字稿中遇到了这个问题,并想禁用 ESLint of no-unused-vars 警告。

以下是如何对整个文件或一行禁用它

enter image description here

打字稿解决方案

  1. 对于整个文件,只需将以下行放在打字稿文件的顶部

    /* eslint-disable @typescript-eslint/no-unused-vars */

  2. 对于特定行,请将其放在警告的顶部

    // eslint-disable-next-line @typescript-eslint/no-unused-vars 端点:(构建器)=>({}),

添加到文件或行的顶部后,警告消失。


-1
投票

进入您的设置并搜索“eslint”,然后查找名为 Elint:enable 的内容,取消选中“控制是否启用 eslint”复选框。

这对我有用 我正在使用

Version: 1.72.2 (system setup)
Commit: d045a5eda657f4d7b676dedbfa7aab8207f8a075
Date: 2022-10-12T22:15:18.074Z
Electron: 19.0.17
Chromium: 102.0.5005.167
Node.js: 16.14.2
V8: 10.2.154.15-electron.0
OS: Windows_NT x64 10.0.19045
Sandboxed: No

-3
投票

如果您使用的是Create-react-app,则无需安装任何东西或Eject,您只需要转到

/node_modules/react-scripts/config/webpack.config.dev.js.
在“新 ESLintPlugin”规则上只需添加:

'react/jsx-uses-react': 'error',
'react/jsx-uses-vars': 'error',
'no-unused-vars': 0
© www.soinside.com 2019 - 2024. All rights reserved.