默认加载eslint插件规则
Load eslint plugin rules by default
我创建了一个带有两个规则的 eslint 插件(即 eslint-plugin-components):no-wait
和 no-huge-timeout
。如果我像这样将这两条规则添加到 .eslintrc
,eslint 将正常工作:
{
"extends": "airbnb-base",
"plugins": ["components"],
"rules": {
"components/no-wait": 2,
"components/no-huge-timeouts": 2
}
}
我一直在尝试做的是将它们加载到我的插件索引中,如下所示:
'use strict';
var requireIndex = require('requireindex');
module.exports.rules = requireIndex(__dirname + '/lib/rules');
module.exports.configs = {
rules: {
'components/no-wait': 2,
'components/no-huge-timeouts': 2
}
};
但是这样eslint不会加载它们。我的问题是是否可以做我想做的事,我该怎么做。
根据 documentation,您必须在 configs
中包含命名配置:
module.exports.configs = {
some_name: {
rules: {
'components/no-wait': 2,
'components/no-huge-timeouts': 2
}
}
};
你会 reference that named configuration 在你的 .eslintrc
:
{
"plugins": ["components"],
"extends": [
"airbnb-base",
"plugin:components/some_name"
]
}
我创建了一个带有两个规则的 eslint 插件(即 eslint-plugin-components):no-wait
和 no-huge-timeout
。如果我像这样将这两条规则添加到 .eslintrc
,eslint 将正常工作:
{
"extends": "airbnb-base",
"plugins": ["components"],
"rules": {
"components/no-wait": 2,
"components/no-huge-timeouts": 2
}
}
我一直在尝试做的是将它们加载到我的插件索引中,如下所示:
'use strict';
var requireIndex = require('requireindex');
module.exports.rules = requireIndex(__dirname + '/lib/rules');
module.exports.configs = {
rules: {
'components/no-wait': 2,
'components/no-huge-timeouts': 2
}
};
但是这样eslint不会加载它们。我的问题是是否可以做我想做的事,我该怎么做。
根据 documentation,您必须在 configs
中包含命名配置:
module.exports.configs = {
some_name: {
rules: {
'components/no-wait': 2,
'components/no-huge-timeouts': 2
}
}
};
你会 reference that named configuration 在你的 .eslintrc
:
{
"plugins": ["components"],
"extends": [
"airbnb-base",
"plugin:components/some_name"
]
}