我的插件
@ bluelovers / eslint-plugin https://github.com/bluelovers/ws-node-bluelovers/tree/master/packages/eslint-plugin
我的基本配置 https://github.com/bluelovers/ws-node-bluelovers/blob/master/packages/eslintrc/.eslintrc.json
运行时用户配置
{
"extends": [
"bluelovers"
]
}
我可以输入用户回购
eslint --print-config .
这可以显示配置并且没有错误,我也可以在列表中看到我的插件配置
"@bluelovers/no-irregular-whitespace": [
"error",
{
"skipComments": true,
"skipStrings": false,
"skipTemplates": false,
"skipRegExps": false,
"ignores": [
" "
]
}
],
但是当我键入eslint index.ts
时,它会显示错误
1:1 error Definition for rule '@bluelovers/no-irregular-whitespace' was not found @bluelovers/no-irregular-whitespace
index.ts
export const r = /[ \t\uFEFF\xA0 ]+$/;
const IRREGULAR_WHITESPACE = /[\f\v ]+/mgu;
我该如何解决?
答案 0 :(得分:2)
这意味着eslint无法在您的index.js
中找到规则。尝试看看您的index.js
导出。他们应该看起来像这样:
module.exports = {
rules: {
[myRuleName]: myRule
}
};
不是这样的:
exports.default = {
rules: {
[myRuleName]: myRule
}
};
如果您使用的是TypeScript,请将index.ts
中的导出从export default {...}
更改为exports = {...}
。
答案 1 :(得分:0)
我认为缺少的关键是配置中没有“插件”会话。
您为什么要从“ bluelovers”扩展?您是否发布了共享配置?似乎您正在使用插件,而不是配置。
然后,您使用规则“ @ bluelovers / no-irregular-whitespace”,并在前导@。
如果您的插件发布为“ @ bluelovers / eslint-plugin”,则应尝试以下操作:
{
"plugins": ["@bluelovers"],
"extends": ["@bluelovers"], // Assuming you have @bluelovers/eslint-config published, otherwise this might look different or could be skipped
"rules": {
"@bluelovers/no-irregular-whitespace": ["error"]
}
}