禁用文件夹的 eslint 规则

Disable eslint rules for folder

有没有办法禁用文件夹的特定规则?例如,我不希望 test 文件夹中的所有测试文件都需要 JSDoc 注释。有办法吗?

要忽略 eslint 规则中的某些文件夹,我们可以在根目录中创建文件 .eslintignore 并在其中添加我们要忽略的文件夹的路径(与 .gitignore 的方式相同)。

这是 Ignoring Files and Directories 上 ESLint 文档中的示例:

# path/to/project/root/.eslintignore
# /node_modules/* and /bower_components/* in the project root are ignored by default

# Ignore built files except build/index.js
build/*
!build/index.js

之前的答案是正确的,但完整的答案大约是 disabling rules only for a group of files,您会在那里找到 disable/enable 某些文件夹的规则所需的文档(因为在某些情况下你不想忽略整个事情,只禁用某些规则)。示例:

    {
        "env": {},
        "extends": [],
        "parser": "",
        "plugins": [],
        "rules": {},
        "overrides": [
          {
            "files": ["test/*.spec.js"], // Or *.test.js
            "rules": {
              "require-jsdoc": "off"
            }
          }
        ],
        "settings": {}
    }

YAML 版本:

overrides:
  - files: *-tests.js
    rules:
      no-param-reassign: 0

mocha 测试的特定规则示例:

您还可以为文件夹设置特定的环境,如下所示:

overrides:
  - files: test/*-tests.js
    env:
      mocha: true

此配置将修复有关 describeit 未定义的错误消息,仅适用于您的测试文件夹:

/myproject/test/init-tests.js
6:1 error 'describe' is not defined no-undef
9:3 error 'it' is not defined no-undef

在 ESLint 6.7.0+ 中使用“ignorePatterns”:[].

您可以在配置文件中使用 ignorePatterns 告诉 ESLint 忽略特定文件和目录。

的示例。eslintrc.js

    module.exports = {
  env: {
   ...
  },
  extends: [
   ...
  ],
  parserOptions: {
  ...
  },
  plugins: [
   ...
  ],
  rules: {
   ...
  },
  ignorePatterns: ['src/test/*'], // <<< ignore all files in test folder
};

或者您可以忽略具有某些扩展名的文件:

ignorePatterns: ['**/*.js']

您可以在此处阅读用户指南文档。

https://eslint.org/docs/user-guide/configuring/ignoring-code