在一个.eslintrc
文件中,我们可以使用:
"extends": "eslint:recommended"
扩展 eslint 提供的推荐规则,并且在规则列表中,很多都标记为“推荐”。
我的问题是它们的确切规则定义是什么?我在eslint的 repo 中搜索过,但没有找到。
Freewind 的答案是指向一个特定的提交——现在已经过时了。
当前eslint:recommended
规则可以在github.com/eslint/eslint/blob/master/conf/eslint-recommended.js找到。
从项目根目录运行此终端命令以输出在您的设置中应用的定义的完整列表。
./node_modules/.bin/eslint --print-config *.* > "./.eslintrc.js_fullsettings.js"
如果你只有extends: ['eslint:recommended']
在.eslint
文件中,你会得到你正在寻找的东西。
这里有一个清单。
Eslint 不再在单个文件中显示推荐规则列表,所以这里有一种使用 Node.js 获取当前列表的方法:
const { Linter } = require('eslint')
const rules = [...new Linter().getRules().entries()] // all rules
.filter(data => data[1].meta.docs.recommended) // filter out unrecommended
.map(data => data[0]) // get rule names
console.log(rules.join('\n'))
这是一个现场示例,它还可以创建一个基本上代表整个推荐配置的对象、一个方便的降价图表,或者如果你需要的话,也可以只是一个简单的规则名称列表。
此列表中带有复选标记的所有条目:https ://eslint.org/docs/rules/
从源代码中,我发现:
所以真正的配置在这里:https ://github.com/eslint/eslint/blob/3642d0bb6ced17eeed50c030531a3ddbeb939f29/conf/eslint.json