如何从 React 中的 eslint 解析器中排除 css 个文件

how to exclude css files from eslint parser in React

我需要从 eslint 解析器中排除 css 个文件。

当前,当我 运行 eslint src/** 这正在检查所有文件,包括 css 文件。 . 请在下面找到我的 eslintrc 文件内容。

module.exports = {
    "parser": "babel-eslint",
    "extends": "airbnb",

    "plugins": [
        "react",
        "jsx-a11y",
        "import"
    ],
    "env" : {
      "browser": true
    }
    "rules": {
      "react/jsx-filename-extension": [1, { "extensions": [".js", ".jsx"] }],
    },

};

.eslintignore 文件来忽略样式会很好地工作。在里面,做这样的事情:*.css

这里有一个good starting point with these techs, which I actually found while reading another,

改用eslint --ext js,jsx src。这允许 ESLint 自己遍历 src 目录,包括具有 .js.jsx 扩展名的文件。

使用 eslint src/** 并忽略 src/**/*.css 将正确排除 .css 文件,但它会丢失 src 内子目录中的任何 .jsx 文件。

为什么?

以此为例

src
├── a.css
├── b.js
└── c
    ├── d.css
    ├── e.js
    └── f.jsx
  • eslint src/** 扩展为 eslint src/a.css src/b.js src/c。 ESLint 检查 src/a.csssrc/b.js 因为它们是显式传递的,然后它自己遍历 src/c 和 lints src/c/e.js。这甚至包括直接在 src 中的非 js 文件,并且完全错过 src.
  • 子目录中的 .jsx 文件
  • eslint src 告诉 ESLint 使用默认的 .js 扩展自己遍历 src,因此它检查了 src/b.jssrc/c/e.js 但错过了 src/c/f.jsx.
  • eslint --ext js,jsx src 告诉 ESLint 自己遍历 src,包括 .js.jsx 文件,因此它检查 src/b.jssrc/c/e.js, 和 src/c/f.jsx.