【发布时间】:2017-11-27 23:52:09
【问题描述】:
如何在.eslintr.json 中设置"indent" 以匹配WebStorm 中使用的默认值?
到目前为止,我尝试过的所有东西都无法匹配the official documentation:
-
"indent": ["error", 2]- 给了很多Expected indentation of 2 spaces but found 4 -
"indent": ["error", 4]- 给了很多Expected indentation of 4 spaces but found 8 -
"indent": ["error", 8]- 给了很多Expected indentation of 8 spaces but found 4
我完整的 eslint 配置:
{
"env": {
"es6": true,
"node": true,
"jasmine": true
},
"extends": "eslint:recommended",
"parserOptions": {
},
"rules": {
"no-else-return": "error",
"no-multi-spaces": "error",
"no-whitespace-before-property": "error",
"camelcase": "error",
"new-cap": "error",
"no-console": "error",
"comma-dangle": "error",
"no-var": "error",
"indent": ["error", 4],
"quotes": [
"error",
"single"
],
"semi": [
"error",
"always"
]
}
}
在输入代码时,我总是使用Ctrl+Alt+L自动格式化代码,生成的代码格式化不符合任何eslint设置。
更新
如前所述,"indent": ["error", 4] 的代码示例:
对于此代码:(通过 Ctrl+Alt+L 格式化)
const a = 123;
switch (a) {
case 1:
return 1;
case 2:
return 2;
case 3:
return 3;
default:
break;
}
结果:
3:1 error Expected indentation of 0 spaces but found 4
4:1 error Expected indentation of 4 spaces but found 8
5:1 error Expected indentation of 0 spaces but found 4
6:1 error Expected indentation of 4 spaces but found 8
7:1 error Expected indentation of 0 spaces but found 4
8:1 error Expected indentation of 4 spaces but found 8
9:1 error Expected indentation of 0 spaces but found 4
10:1 error Expected indentation of 4 spaces but found 8
示例 2
obj.format('text', {
value: '${two}'
}
);
结果:
2:1 error Expected indentation of 4 spaces but found 8
3:1 error Expected indentation of 0 spaces but found 4
示例 3
return begin()
.then(() => {
return callback()
.then(data => {
success = true;
return commit();
}, reason => {
return rollback();
})
},
function (reason) {
update(false, false, reason);
return $p.reject(reason);
});
结果:
3:1 error Expected indentation of 8 spaces but found 12
4:1 error Expected indentation of 12 spaces but found 16
5:1 error Expected indentation of 16 spaces but found 20
6:1 error Expected indentation of 16 spaces but found 20
7:1 error Expected indentation of 12 spaces but found 16
8:1 error Expected indentation of 16 spaces but found 20
9:1 error Expected indentation of 12 spaces but found 16
10:1 error Expected indentation of 4 spaces but found 8
11:1 error Expected indentation of 4 spaces but found 8
12:1 error Expected indentation of 8 spaces but found 12
13:1 error Expected indentation of 8 spaces but found 12
14:1 error Expected indentation of 4 spaces but found 8
【问题讨论】:
-
所以你得到了 eslint 错误?具体什么时候?
-
@ush189 到处都是,就是这样,无论我尝试过什么,WebStorm 似乎对代码格式都有自己的想法。
-
您的设置看起来不错。你能发布你的 eslint 配置吗?
-
@ush189 我已经更新了我的问题;)
-
我有相同的 webstorm 设置,我刚刚复制了你的 eslint 配置,一切似乎都正常。因此,我认为您还需要向我们展示带有错误消息的代码屏幕截图;)
标签: javascript webstorm eslint