Eslint 允许在测试中使用无关的依赖项
Posted
技术标签:
【中文标题】Eslint 允许在测试中使用无关的依赖项【英文标题】:Eslint allow extraneous dependencies in tests 【发布时间】:2018-01-02 22:57:33 【问题描述】:在我的测试文件中,我在某些导入时遇到 eslint 错误,例如
'import/no-extraneous-dependencies': ["error", devDependencies: 真的,],
这只发生在我的第二个测试目录中的某个子文件夹中 在我的根测试目录中,我没有收到此错误 我在 package.json 或 .eslintrc 中没有发现任何可能导致差异化的设置。 目前我必须使用
/* eslint-disable import/no-extraneous-dependencies*/
在我不喜欢的测试文件中 如果我添加
"import/no-extraneous-dependencies": ["error", "devDependencies": true ]
到 .eslintrc th 规则在所有地方都关闭,而不仅仅是在测试中 我如何切换这个规则,除了将 .eslintrc 放置到测试文件夹?哪些文件夹使用 devDependencies?
【问题讨论】:
【参考方案1】:您可以按如下方式使用 glob 数组,这将允许从文件名与 **/*.test.js 匹配的测试文件中访问无关的依赖项
"import/no-extraneous-dependencies": ["error", "devDependencies": ["**/*.test.js"]]
【讨论】:
【参考方案2】:您可以在项目根目录中创建.eslintignore
文件,以禁用特定文件或目录的 ESLint。
并在其中放入以下行:
test/*
参考:http://eslint.org/docs/user-guide/configuring#ignoring-files-and-directories
编辑:
如果您想忽略特定目录的特定规则,可以在该目录中放置另一个 .eslintrc
文件。
参考:http://eslint.org/docs/user-guide/configuring#configuration-cascading-and-hierarchy
【讨论】:
但这会忽略此文件夹中的所有 linting 规则以上是关于Eslint 允许在测试中使用无关的依赖项的主要内容,如果未能解决你的问题,请参考以下文章
eslint 'html-webpack-plugin' 应该列在项目的依赖项中,而不是 devDependencies 中。 (导入/无外部依赖项)
无法 npm 使用 eslint 依赖项启动我的 React 项目
在基于 TypeScript/eslint/Webpack 的构建环境中检测未使用的导出符号