vscode 配置vue+vetur+eslint+prettier自动格式化功能


Posted in Javascript onMarch 23, 2020

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

vscode Vetur插件

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

vscode 配置vue+vetur+eslint+prettier自动格式化功能 

vscode ESlint插件

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

vscode 配置vue+vetur+eslint+prettier自动格式化功能 

基于vue-cli创建的项目 以下相关步骤需要注意:

创建的时候把Linter/Formatter选上(默认已选上)

vscode 配置vue+vetur+eslint+prettier自动格式化功能

下一步选择Eslint+Prettier

vscode 配置vue+vetur+eslint+prettier自动格式化功能

下一步选择Lint on save (在编辑保存之后根据对代码格式进行检测)

vscode 配置vue+vetur+eslint+prettier自动格式化功能

下一步选择In dedicated config files(将eslint和prettier的配置抽离到独立的文件中)

vscode 配置vue+vetur+eslint+prettier自动格式化功能 

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

vscode 配置vue+vetur+eslint+prettier自动格式化功能

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

vscode 配置vue+vetur+eslint+prettier自动格式化功能 

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

vscode 配置vue+vetur+eslint+prettier自动格式化功能 

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

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

在用户设置添加自定义设置

mac中的位置

vscode 配置vue+vetur+eslint+prettier自动格式化功能

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

vscode 配置vue+vetur+eslint+prettier自动格式化功能

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

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

这是我自己的自定义配置

vscode 配置vue+vetur+eslint+prettier自动格式化功能 

非vue-cli创建的项目

单独引入以下红框中的几个依赖

vscode 配置vue+vetur+eslint+prettier自动格式化功能

添加vscode Vetur和ESlint, .eslintrc.js、.prettierrc 和 settings.json的内容和上面一样,这样就可以实现保存自动根据eslint进行格式化了。

总结

引入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文件

到此这篇关于vscode 配置vue+vetur+eslint+prettier自动格式化功能的文章就介绍到这了,更多相关vscode vue vetur eslint prettier内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
让js弹出窗口居前显示的实现方法
Jul 10 Javascript
原生JS可拖动弹窗效果实例代码
Nov 09 Javascript
javascript实现简单的页面右下角提示信息框
Jul 31 Javascript
JS实现仿FLASH效果的竖排导航代码
Sep 15 Javascript
基于jQuery倒计时插件实现团购秒杀效果
May 13 Javascript
jQuery获取attr()与prop()属性值的方法及区别介绍
Jul 06 Javascript
jQuery+正则+文本框只能输入数字的实现方法
Oct 07 Javascript
js控制div层的叠加简单方法
Oct 15 Javascript
vue路由事件beforeRouteLeave及组件内定时器的清除方法
Sep 29 Javascript
微信小程序获取用户信息的两种方法wx.getUserInfo与open-data实例分析
May 03 Javascript
ES6 let和const定义变量与常量的应用实例分析
Jun 27 Javascript
使用apifm-wxapi模块中的问题及解决方法
Aug 05 Javascript
云服务器部署Node.js项目的方法步骤(小白系列)
Mar 23 #Javascript
vue ssr+koa2构建服务端渲染的示例代码
Mar 23 #Javascript
详解webpack-dev-middleware 源码解读
Mar 23 #Javascript
vscode调试node.js的实现方法
Mar 22 #Javascript
如何优雅地取消 JavaScript 异步任务
Mar 22 #Javascript
Vue-cli3多页面配置详解
Mar 22 #Javascript
redux处理异步action解决方案
Mar 22 #Javascript
You might like
PHP计算2点经纬度之间的距离代码
2013/08/12 PHP
PHP CURL 内存泄露问题解决方法
2015/02/12 PHP
关于WordPress的SEO优化相关的一些PHP页面脚本技巧
2015/12/10 PHP
PHP 扩展Memcached命令用法实例总结
2020/06/04 PHP
jQuery实现拖拽效果插件的方法
2015/03/23 Javascript
简述AngularJS相关的一些编程思想
2015/06/23 Javascript
JavaScript 闭包机制详解及实例代码
2016/10/10 Javascript
koa2实现登录注册功能的示例代码
2018/12/03 Javascript
微信小程序实现购物页面左右联动
2019/02/15 Javascript
在Vue中使用icon 字体图标的方法
2019/06/14 Javascript
vue 检测用户上传图片宽高的方法
2020/02/06 Javascript
JavaScript实现表单验证功能
2020/12/09 Javascript
python实现简单socket程序在两台电脑之间传输消息的方法
2015/03/13 Python
Python实现LRU算法的2种方法
2015/06/24 Python
Python实现TCP协议下的端口映射功能的脚本程序示例
2016/06/14 Python
Python3利用SMTP协议发送E-mail电子邮件的方法
2017/09/30 Python
Python实现的维尼吉亚密码算法示例
2018/04/12 Python
Python之文字转图片方法
2018/05/10 Python
pandas 读取各种格式文件的方法
2018/06/22 Python
python制作mysql数据迁移脚本
2019/01/01 Python
python之mock模块基本使用方法详解
2019/06/27 Python
简单了解django缓存方式及配置
2019/07/19 Python
解决Django中修改js css文件但浏览器无法及时与之改变的问题
2019/08/31 Python
python实现的读取网页并分词功能示例
2019/10/29 Python
python自动从arxiv下载paper的示例代码
2020/12/05 Python
浅谈CSS3中的变形功能-transform功能
2017/12/27 HTML / CSS
HTML5中5个简单实用的API(第二篇,含全屏、可见性、拍照、预加载、电池状态)
2014/05/07 HTML / CSS
Eagle Eyes Optics鹰眼光学:高性能太阳镜
2018/12/07 全球购物
毕业设计计划书
2014/01/09 职场文书
商务英语专业求职信范文
2014/01/28 职场文书
美容院营销方案
2014/03/05 职场文书
试用期自我鉴定范文
2014/03/20 职场文书
管理提升方案
2014/06/04 职场文书
农村党支部书记司法四风问题对照检查材料
2014/09/26 职场文书
2014年环境整治工作总结
2014/12/10 职场文书
CSS几步实现赛博朋克2077风格视觉效果
2021/06/16 HTML / CSS