几个常用的eslint插件介绍
2022-03-03 本文已影响0人
如果俞天阳会飞
eslint-plugin-html插件
通过这个插件你可以让eslint去检测html文件script标签里的js代码。使用示例:
// .eslintrc.js
{
"plugins": [
"html"
]
}
eslint-plugin-import插件
这个插件意在提供对ES6+ import/export语法的支持,有助于防止你写错文件路径或者引用的变量名。使用示例:
{
"plugins": [
],
"rules": {
"import/no-unresolved": [2, { "commonjs": true, "amd": true }],
"import/named": 2,
"import/namespace": 2,
"import/default": 2,
"import/export": 2,
// # etc...
}
}
或者使用现成的推荐规则:
{
"extends": {
"eslint:recommended",
"plugin:import/errors",
"plugin:import/warnings"
}
}
eslint-plugin-node插件
添加对node的eslint支持。使用示例:
{
"plugins": ["node"],
"extends": ["eslint:recommended", "plugin:node/recommended"],
"rules": {
"node/exports-style": ["error", "module.exports"],
}
}
eslint-plugin-promise插件
这个插件意在通过代码风格检测让开发者养成较好地使用promise的方式(最佳实践,best practices)。比如在对promise使用了then之后会要求你加一个catch捕获下异常,当然如果你的方法是直接return返回了这个promise的话则不会要求你马上加catch(因为毕竟当然你可以稍后在其他地方拿到这个promise后再catch)。使用示例
{
"plugins": [
"promise"
],
"rules": {
"promise/always-return": "error",
"promise/no-return-wrap": "error",
"promise/param-names": "error",
"promise/catch-or-return": "error",
"promise/no-native": "off",
"promise/no-nesting": "warn",
"promise/no-promise-in-callback": "warn",
"promise/no-callback-in-promise": "warn",
"promise/avoid-new": "warn",
"promise/no-return-in-finally": "warn"
}
}
或者直接使用现成的推荐规则:
{
"extends": [
"plugin:promise/recommended"
]
}
eslint-plugin-standard插件
这是一个为Standard Linter而做的补充插件,一共就扩展了4个规则,使用示例如下:
{
rules: {
'standard/object-curly-even-spacing': [2, "either"]
'standard/array-bracket-even-spacing': [2, "either"],
'standard/computed-property-even-spacing': [2, "even"]
'standard/no-callback-literal': [2, ["cb", "callback"]]
}
}
来源: https://www.orzzone.com/introduction-eslint-plugins.html