eslint 允许 json 以外的格式,包括 .js(如果作为模块导出)。不幸的是,eslint 所需的键包括破折号,例如下面的prefer-const。需要引用。这似乎有效。
但是:是否有一种解决方法可以允许 .js 首选项不需要引号?例如,Prettier 允许 .prettierrc.js 使用驼峰式大小写。这似乎不适用于 eslint。
module.exports = {
env: {
browser: true,
es6: true
},
extends: "standard",
parserOptions: {
sourceType: "module"
},
rules: {
curly: [ 0 ],
"prefer-const": [ 2 ]
}
}
最佳答案
如果这对您很重要,我会继续编写一个函数将键名称从驼峰式大小写转换为破折号样式。
我能够用几行代码提出概念验证,因此这应该不会是太多工作。
function fromCamelCase(rules) {
return Object.entries(rules).reduce(
(obj, [key, value]) =>
(obj[key.replace(/[A-Z]/, ch => `-${ch.toLowerCase()}`)] = value, obj),
{ }
);
}
module.exports = {
env: {
browser: true,
es6: true
},
extends: "standard",
parserOptions: {
sourceType: "module"
},
rules: fromCamelCase({
curly: [ 0 ],
preferConst: [ 2 ]
})
}
如果我正在阅读source code正确的是,eslint 不允许使用别名规则名称,因此创建自定义插件不是一个选项。
关于javascript - .eslintrc.js 键带有 "-"(破折号),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50164415/