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

IT技术 reactjs eslint babeljs eslint-config-airbnb
2021-04-30 14:45:59

我需要从 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"] }],
    },

};
2个回答

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

使用eslint src/**而忽略src/**/*.css将正确地排除.css的文件,但会错过任何.jsx文件子目录里面src

为什么?

以此为例

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.css并且src/b.js因为它们被显式传递,所以它自己遍历src/c和 lints src/c/e.js这甚至包括非JS文件直接中src和完全忽略.jsx中的子目录中的文件src
  • eslint src告诉ESLint做自己的遍历src使用默认的.js扩展,所以绒毛src/b.jssrc/c/e.js,但失误src/c/f.jsx
  • eslint --ext js,jsx src告诉ESLint做一个自己的遍历src,包括.js.jsx文件,因此绒毛src/b.jssrc/c/e.jssrc/c/f.jsx

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

这是这些技术的一个很好的起点我实际上是在阅读另一篇类似的 SO 帖子时发现的