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 相关文章推荐
JQuery自定义事件的应用 JQuery最佳实践
Aug 01 Javascript
js限制文本框只能输入数字(正则表达式)
Jul 15 Javascript
关于jQuery中.attr()和.prop()的问题探讨
Sep 06 Javascript
HTTP 304错误的详细讲解
Nov 13 Javascript
原生javaScript做得动态表格(注释写的很清楚)
Dec 29 Javascript
jq实现酷炫的鼠标经过图片翻滚效果
Mar 12 Javascript
jquery实现的Accordion折叠面板效果代码
Sep 02 Javascript
小白谈谈对JS原型链的理解
May 03 Javascript
深入解析Vue 组件命名那些事
Jul 18 Javascript
详解Js中的模块化是如何实现的
Oct 18 Javascript
Node4-5静态资源服务器实战以及优化压缩文件实例内容
Aug 29 Javascript
js和jquery判断数据类型的4种方法总结
Aug 28 jQuery
云服务器部署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+java实现自动新闻滚动窗口
2006/10/09 PHP
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
2008/03/28 PHP
PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\
2012/06/17 PHP
基于JQuery+PHP编写砸金蛋中奖程序
2015/09/08 PHP
PHP进制转换实例分析(2,8,16,36,64进制至10进制相互转换)
2017/02/04 PHP
php-msf源码详解
2017/12/25 PHP
JS、DOM和JQuery之间的关系示例分析
2014/04/09 Javascript
jquery实现的网页自动播放声音
2014/04/30 Javascript
angularJS提交表单(form)
2015/02/09 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
2016/02/12 Javascript
JavaScript中localStorage对象存储方式实例分析
2017/01/12 Javascript
jquery,js简单实现类似Angular.js双向绑定
2017/01/13 Javascript
利用node.js爬取指定排名网站的JS引用库详解
2017/07/25 Javascript
vuex操作state对象的实例代码
2018/04/25 Javascript
Vue与Node.js通过socket.io通信的示例代码
2018/07/25 Javascript
浅谈Vue.js路由管理器 Vue Router
2018/08/16 Javascript
react-native滑动吸顶效果的实现过程
2019/06/03 Javascript
Node.js fs模块(文件模块)创建、删除目录(文件)读取写入文件流的方法
2019/09/03 Javascript
如何利用node转发请求详解
2020/09/17 Javascript
python进阶教程之函数对象(函数也是对象)
2014/08/30 Python
python判断字符串是否纯数字的方法
2014/11/19 Python
python安装以及IDE的配置教程
2015/04/29 Python
Python入门_浅谈for循环、while循环
2017/05/16 Python
深入了解python中元类的相关知识
2019/08/29 Python
python删除指定列或多列单个或多个内容实例
2020/06/28 Python
Python环境使用OpenCV检测人脸实现教程
2020/10/19 Python
CSS3 开发工具收集
2010/04/17 HTML / CSS
英国家喻户晓的折扣商场:TK Maxx
2017/05/26 全球购物
Stefania Mode美国:奢华设计师和时尚服装
2018/01/07 全球购物
教育孩子心得体会
2014/01/01 职场文书
数学系毕业生的自我评价
2014/01/10 职场文书
电子商务个人职业生涯规划范文
2014/02/12 职场文书
幼儿教师工作感言
2014/02/14 职场文书
医疗专业毕业生求职信
2014/08/28 职场文书
python自动化测试通过日志3分钟定位bug
2021/11/20 Python
SQL SERVER实现连接与合并查询
2022/02/24 SQL Server