11

在一个 node.js 项目中,我添加了 eslint-plugin-security,它对我的​​测试/规范文件中的代码(使用 mochajs)给出了很多警告。由于测试代码不会在生产环境中运行,因此它们看起来不像在项目的实际代码中那样有用。(很多通用对象注入接收器警告)

/* eslint-disable */除了放在每个规范文件的顶部之外,有没有办法让安全插件忽略某些文件?

4

2 回答 2

15

我发现处理这种情况的最佳方法是基于这个答案。您可以覆盖子文件夹中的 eslint 文件的一部分。就我而言,我正在从我的 e2e 测试文件夹中的一个 jest 插件中禁用有问题的规则。/e2e-tests/ 中的示例 .eslintrc.js:

module.exports = {
  overrides: [
    {
      files: ["*.spec.js"],

      rules: {
        "jest/valid-expect": 0
      }
    }
  ]
};
于 2020-09-11T09:43:36.307 回答
15

有三种方法可以忽略文件或文件夹:

1.在您的项目根文件夹中创建一个.eslintignore您想要忽略的内容:

**/*.js

2. 使用 eslint cli &--ignore-path指定忽略规则所在的另一个文件

eslint --ignore-path .jshintignore file.js

3. 使用你的 package.json

{
  "name": "mypackage",
  "version": "0.0.1",
  "eslintConfig": {
      "env": {
          "browser": true,
          "node": true
      }
  },
  "eslintIgnore": ["*.spec.ts", "world.js"]
}

官方文档

在我这边,我遇到了 Intellij IDEA 的问题,其中 eslint 正在检查仅专用于 Typescript (+tslint) 的文件夹中的文件,这很痛苦,所以我选择了解决方案 3。

于 2019-11-20T12:53:51.057 回答