配置自动格式化功能

该配置用于vue开发,最终效果是保存时自动根据eslint对js、html和css代码进行格式化。

vscode Vetur插件

Vetur插件用于识别vue文件,原本vetur自带格式化功能,但是和eslint会有冲突,所以没用上。

vscode ESlint插件

Eslint插件用于根据工程目录的.eslintrc.js配置文件在编辑器中显示一些错误提示,后面的自动格式化根据这里的错误提示进行格式化操作。

基于vue-cli创建的项目

以下相关步骤需要注意:

  1. 创建的时候把Linter/Formatter选上(默认已选上)
  2. 选择Eslint+Prettier
  3. 选择Lint on save (在编辑保存之后根据对代码格式进行检测)
  4. 选择In dedicated config files(将eslint和prettier的配置抽离到独立的文件中)

创建完在package.json里面可看到和eslint与prettier相关的依赖

在.eslintrc.js可以看到总体的eslint规则合并了vue、eslint和prettier的一些插件库进行语法分析(eslint针对js和vue,prettier针对js、html和css,这里eslint和prettier的一些冲突已经处理)

到这一步,编译的时候就能看到eslint报错和警告了,但是还不能实现保存自动格式化功能。

在文件根目录下创建.prettierrc对prettier格式化进行自定义规则设置,以下为我添加的规则

{
  /* 使用单引号包含字符串 */
  "singleQuote": true,
  /* 不添加行尾分号 */
  "semi": false,
  /* 在对象属性添加空格 */
  "bracketSpacing": true,
  /* 优化html闭合标签不换行的问题 */
  "htmlWhitespaceSensitivity": "ignore"
}

根据需要选择全局(User)或者工程(Workspace)的配置,点击右上角的编辑按钮,打开settings.json文件

添加以下配置,使编辑器在保存时自动根据eslint规则格式化

"editor.codeActionsOnSave": {
    "source.fixAll": true
},
/* 关闭编辑器自带保存格式化功能,此功能会用Vetur进行格式化。*/
"editor.formatOnSave": false

全局设置

{
  "editor.fontSize": 14,
  "editor.tabSize": 2,
  "editor.codeActionsOnSave": {
    "source.fixAll": true
  },
  // 全局使用保存自动格式化功能,vue项目关闭此项
  "editor.formatOnSave": true
}

复制代码项目设置

{
  // vue项目关闭vscode的保存自动格式化功能
  "editor.formatOnSave": true
}

总结

引入eslint、vue和prettier的一些相关的依赖@vue/cli-plugin-eslint
@vue/eslint-config-prettier
babel-eslint
eslint
eslint-plugin-prettier
eslint-plugin-vue
prettier
复制代码
安装vscode Vetur和ESlint插件
配置.eslintrc.js文件
配置.prettierrc文件
配置settings.json文件

这样,在非vue项目中,这两项格式化设置都能生效

// 使用单引号包含字符串
"prettier.singleQuote": true,
// 不添加行尾分号
"prettier.semi": false,

引用链接:引用地址

你可能感兴趣的:(实用)