由于团队内大家的编码习惯,都不太想要开启eslint规范,其实我觉得开启挺好的。不过人微言轻....这样就带来了一个问题,本来我自己之前写的vue小项目,都是用的两个空格缩进,现在要融合大家的规范,都处理成4个空格缩进,方便别人阅读。然而当我想将vscode缩进设置为4个空格的时候,并没有在所有文件内都生效。
或者我每次在.vue文件中 右键格式化代码的时候,每次都只是 template 中的内容缩进改成4个空格了,而下面的 script 和 style中的内容没有被改成4个空格。
解决方案:
- 文件--->首选项---->设置,找到 editor.detectIndentation,将其设置为 false.
这个配置的默认注释为
// 当打开文件时,将基于文件内容检测 "editor.tabSize" 和 "editor.insertSpaces"。
打个比方,你对于 editor.tabSize 的设置可能是4个空格,但是你打开了一个 demo,它的代码以2个空格为缩进,那么这个时候 editor.detectIndentation 会检查到此文件内容以2个空格为缩进,便临时将 tabSize 设置改为2个空格,这就时为什么你可能设置为 tabSize=4,而打开一个文件右下角显示 tabSize=2,每次右键格式化代码之后都依然还是2个空格的缩进(其实不改 tabSize,写的时候自己手动空两格,之后用回车缩进都会变成2格)
所以首先把这个设置为false,这样就不管你打开的文件是几个空格的缩进,都会按照你在配置文件中写的来了。
- 修改vue-cli 生成的编辑器配置文件 .editorconfig
root = true
[*]
charset = utf-8
indent_style = tab //使用制表符
indent_size = 4 //4个空格为一个缩进
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
- 安装 prettier 扩展。安装完重新加载后,右键格式化文件,就可以看到 .vue文件都已经被处理成 4个空格缩进了

- 补充下,以上的前提是各位的VScode都已经安装了 vetur 扩展。这个相信用 vscode 写 vue 的小伙伴们大部分都知道是干嘛的,就不再过多介绍了。
或者我每次在.vue文件中 右键格式化代码的时候,每次都只是 template 中的内容缩进改成4个空格了,而下面的 script 和 style中的内容没有被改成4个空格。
解决方案:
这个配置的默认注释为
打个比方,你对于 editor.tabSize 的设置可能是4个空格,但是你打开了一个 demo,它的代码以2个空格为缩进,那么这个时候 editor.detectIndentation 会检查到此文件内容以2个空格为缩进,便临时将 tabSize 设置改为2个空格,这就时为什么你可能设置为 tabSize=4,而打开一个文件右下角显示 tabSize=2,每次右键格式化代码之后都依然还是2个空格的缩进(其实不改 tabSize,写的时候自己手动空两格,之后用回车缩进都会变成2格)
所以首先把这个设置为false,这样就不管你打开的文件是几个空格的缩进,都会按照你在配置文件中写的来了。