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 相关文章推荐
JavaScript 自动分号插入(JavaScript synat:auto semicolon insertion)
Nov 04 Javascript
Javascript 读书笔记索引贴
Jan 11 Javascript
jquery中获取元素的几种方式小结
Jul 05 Javascript
Javascript基础知识(二)事件
Sep 29 Javascript
JS仿百度自动下拉框模糊匹配提示
Jul 25 Javascript
JavaScript表单验证开发
Nov 23 Javascript
清除浏览器缓存的几种方法总结(必看)
Dec 09 Javascript
总结几道关于Node.js的面试问题
Jan 11 Javascript
分分钟玩转Vue.js组件(二)
Mar 01 Javascript
js实现简单选项卡功能
Mar 23 Javascript
详解Angular Forms中自定义ngModel绑定值的方式
Dec 10 Javascript
element-ui table组件如何使用render属性的实现
Nov 04 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用反撇号执行外部命令
2015/04/14 PHP
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
2015/06/03 PHP
ThinkPHP5+Layui实现图片上传加预览功能
2018/08/17 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
2019/03/25 PHP
浅谈Laravel中的三种中间件的作用
2019/10/13 PHP
php中yar框架实例用法讲解
2020/12/27 PHP
学习ExtJS TextField常用方法
2009/10/07 Javascript
LazyForm jQuery plugin 定制您的CheckBox Radio和Select
2009/10/24 Javascript
设置iframe的document.designMode后仅Firefox中其body.innerHTML为br
2012/02/27 Javascript
div+css+js实现无缝滚动类似marquee无缝滚动兼容firefox
2013/08/29 Javascript
jquery对象和javascript对象即DOM对象相互转换
2014/08/07 Javascript
jQuery响应鼠标事件并隐藏与显示input默认值
2014/08/24 Javascript
javascript实现根据时间段显示问候语的方法
2015/06/18 Javascript
JavaScript实现点击自动选择TextArea文本的方法
2015/07/02 Javascript
nodejs项目windows下开机自启动的方法
2017/11/22 NodeJs
微信小程序导入Vant报错VM292:1 thirdScriptError的解决方法
2019/08/01 Javascript
Javascript ParentNode和ChildNode接口原理解析
2020/03/16 Javascript
vue-quill-editor 自定义工具栏和自定义图片上传路径操作
2020/08/03 Javascript
vue-amap根据地址回显地图并mark的操作
2020/11/03 Javascript
Python中使用中文的方法
2011/02/19 Python
python的dict,set,list,tuple应用详解
2014/07/24 Python
Python OpenCV读取png图像转成jpg图像存储的方法
2018/10/28 Python
django多文件上传,form提交,多对多外键保存的实例
2019/08/06 Python
python连接mongodb集群方法详解
2020/02/13 Python
解决python DataFrame 打印结果不换行问题
2020/04/09 Python
Python内置函数property()如何使用
2020/09/01 Python
Python图像读写方法对比
2020/11/16 Python
Python基于Webhook实现github自动化部署
2020/11/28 Python
LivingSocial爱尔兰:爱尔兰本地优惠
2018/08/10 全球购物
Superdry极度干燥美国官网:英国制造的服装品牌
2018/11/13 全球购物
医学生实习自我鉴定
2013/09/27 职场文书
家长会演讲稿范文
2014/01/10 职场文书
幼儿园中班教师寄语
2014/04/03 职场文书
欢迎新生标语2015
2015/07/16 职场文书
遗嘱格式范本
2015/08/07 职场文书
MySQL约束超详解
2021/09/04 MySQL