vue-cli4 + vscode +eslint配置实践

1,683 阅读2分钟

本文最终目标是实现使用vscode开发vue-cli4生成项目时,具有保存时自动格式化功能。 网上相关文章很多,但大多数或过时,或杂乱,使用起来效果并不理想,我也是几经周折,一点点摸索出来一套有效果的配置。

一、vue-cli4生成项目

相关教程网上有,不再啰嗦,直接上图:

  1. 格式化方式选择ESlint+Prettier

  2. 按需选择,我选择保存时格式化

  3. 配置保存在单独文件里

  4. 生成后的项目目录如下:

二、vscode 插件及相关配置

  1. 安装插件,如图:

除了eslint和vetur两个其他看个人习惯

  1. 相关配置

打开首选项 -> setting, 搜索setting,然后点击Edit in setting.json可以打开配置文件

添加配置如下:

{
  "editor.renderWhitespace": "boundary", //显示空格符号
  "editor.formatOnSave": false, //关闭默认的格式化方式
  "editor.codeActionsOnSave": { //保存时自动使用项目中配置的eslint配置进行配置
    "source.fixAll.eslint": true
  }
}

这时候保存时自动格式化已经生效,格式化规则使用的官方推荐的默认规则。

三、个性化配置

就拿我自己的需求举例来说吧,默认配置里缩进是2个空格,我想改为4个空格,在网上查了很多资料,各种说法配置都有,杂乱且无效,坑啊。我自己摸索了一套可以用的配置,可以参考使用。

  1. 配置.eslintrc.js

到了这一步4个空格确实有效果,你可以测试一下,但有两个问题,一是这个配置对vue文件中的html和style里的代码无效。二是你会发现JavaScript代码在两个空格和四个空格之间不停摇摆,因为官方给的配置里@vue/prettier默认是两个空格,和我们的配置起了冲突。 解决办法一就是删除.eslintrc.js文件里的@vue/prettire(不推荐)。方法二就是在根目录里添加.prettierrc配置文件。然后添加配置:

{
    "tabWidth": 4
}

这样可以完美的使用保存时自动格式化功能了。