我试图让eslint忽略我使用webpack.ProvidePlugin
进行全局导入的文件,但该文件仍在被删除。
//file arrangement
- vendor
`- google.js
- ...
- webpack.config.js
//relevant webpack configurations
resolve: {
extensions: ['.js', '.json'],
alias: {
'google': path.resolve(__dirname, './vendor/google.js')
}
},
....
plugins: [
new webpack.ProvidePlugin({
'google': 'google'
})
]
/*google is successfully available globally*/
//.eslintrc.json
{
"extends": ["standard", "standard-react"],
"globals": {
"google": true
}
}
//package.json script
"dev": "webpack-dev-server --port 5888",
...
"lint": "eslint js/**/*.js webpack.config.js"
然而,我仍然从google.js收到数百个linting错误。它已经缩小了,但是webpack文档说虽然这是首选,但它可能并不是必需的,而且eslint文档根本没有提及它。
我还尝试了the docs
中提到的忽略评论风格//google.js
/*global google:true*/
答案 0 :(得分:1)
global option仅指使用全局变量,不会影响文件是否被打印。
如果您不想对特定文件进行lint,则可以使用.eslintignore
文件从linting过程中排除与模式匹配的文件。它与.gitignore
非常相似。
您可能希望排除所有供应商文件,因此您可以使用Ignoring files from linting中建议的模式。
**/vendor/*.js
这将为您提供对被忽略文件的警告,因为您正在使用glob,它会被您的shell扩展,因此您显式将文件传递给ESLint(请参阅Ignored File Warnings )。您可以通过传递目录来消除该警告,并且ESLint将lint目录中的每个JavaScript文件,因此不需要您的glob。
"lint": "eslint js/ webpack.config.js"