折腾用vscode开发vue项目的代码格式化


前端项目如果多人协作,都希望格式统一,并且能编辑的时候自动格式化。
所以做了下面这样的操作:

  1. 安装vetur+prettier插件
  2. 配置vscode的保存自动格式化
  3. 在vetur插件中配置js文件的格式工具为prettier

理论上来说,prettier应该按照一定的规则格式化代码了。
问题就出现在这个规则中,有好几个地方配置,也有优先级。
优先级是

  1. 项目目录的.prettierrc文件,支持json和分号格式(其实还有很多种)
  2. 项目目录的.editorconfig文件(默认配置)
  3. vscode的配置文件(也有好几个地方配置,包括vetur节点下面)

如果有项目中的配置文件存在,vscode的配置文件则不会被读取
问题就出现在如果项目中只有.editorconfig文件,但是不完整,比如没有指定字符串是单引号还是双引号,行尾要不要分号,不会从vscode中读配置了,而是从prettier的默认配置中读取。
最大的问题就是,prettier的默认配置是双引号加分号,editorconfig的配置项,并没有去除行尾分号的设定,所以我想单引号、去除分号就没办法实现了。
这就很忧伤了。
搜了下,GitHub上这位老哥也有这个困扰,希望prettier能够读完.editorconfig后再读vscode配置,而不是用默认配置。

最后给的建议是每个项目都配一个.prettierrc文件,并且写完所有配置项


哦,还有一种解决方案是配置prettier,取消读取editorconfig

 "prettier.useEditorConfig": false