VScode格式化ESlint方法(最全最好用方法)


Posted in Javascript onSeptember 10, 2019

ESlint:是用来统一JavaScript代码风格的工具,不包含css、html等。

背景:

近来研究前端,然后一直在百度上找VScode格式化(ESlint)的插件,结果找了半天都不靠谱。目前没有一个可以格式化html、css、符合ESlint的js、vue的插件,所以自己东拼西凑加实践找到解决方法。

解决方案:

1、安装插件

1)ESlint:javascript代码检测工具,可以配置每次保存时格式化js,但每次保存只格式化一点点,你得连续按住Ctrl+S好几次,才格式化好,自行体会~~

2)vetur:可以格式化html、标准css(有分号 、大括号的那种)、标准js(有分号 、双引号的那种)、vue文件,
但是!格式化的标准js文件不符合ESlint规范,会给你加上双引号、分号等,像这样

VScode格式化ESlint方法(最全最好用方法)

能把html格式化分行显示

VScode格式化ESlint方法(最全最好用方法)

3)Prettier - Code formatter:只关注格式化,并不具有eslint检查语法等能力,只关心格式化文件(最大长度、混合标签和空格、引用样式等),包括JavaScript · Flow · TypeScript · CSS · SCSS · Less · JSX · Vue · GraphQL · JSON · Markdown

4)Manta's Stylus Supremacy: 格式化stylus的插件(不用就不装),因为vetur会把css格式化有分号 、大括号的那种,此插件会把css格式化成stylus风格,像这样

VScode格式化ESlint方法(最全最好用方法)

2、在vscode的文件-首选项-设置里,右侧配置里添加如下代码即可(代码有注释!),从此直接 Ctrl+S 就能一键格式化了 

VScode格式化ESlint方法(最全最好用方法)

VScode格式化ESlint方法(最全最好用方法)

代码如下:

{
   // vscode默认启用了根据文件类型自动设置tabsize的选项
  "editor.detectIndentation": false,
  // 重新设定tabsize
  "editor.tabSize": 2,
  // #每次保存的时候自动格式化 
  "editor.formatOnSave": true,
  // #每次保存的时候将代码按eslint格式进行修复
  "eslint.autoFixOnSave": true,
  // 添加 vue 支持
  "eslint.validate": [
    "javascript",
    "javascriptreact",
    {
      "language": "vue",
      "autoFix": true
    }
  ],
  // #让prettier使用eslint的代码格式进行校验 
  "prettier.eslintIntegration": true,
  // #去掉代码结尾的分号 
  "prettier.semi": false,
  // #使用带引号替代双引号 
  "prettier.singleQuote": true,
  // #让函数(名)和后面的括号之间加个空格
  "javascript.format.insertSpaceBeforeFunctionParenthesis": true,
  // #这个按用户自身习惯选择 
  "vetur.format.defaultFormatter.html": "js-beautify-html",
  // #让vue中的js按编辑器自带的ts格式进行格式化 
  "vetur.format.defaultFormatter.js": "vscode-typescript",
  "vetur.format.defaultFormatterOptions": {
    "js-beautify-html": {
      "wrap_attributes": "force-aligned"
      // #vue组件中html代码格式化样式
    }
  },
  // 格式化stylus, 需安装Manta's Stylus Supremacy插件
  "stylusSupremacy.insertColons": false, // 是否插入冒号
  "stylusSupremacy.insertSemicolons": false, // 是否插入分好
  "stylusSupremacy.insertBraces": false, // 是否插入大括号
  "stylusSupremacy.insertNewLineAroundImports": false, // import之后是否换行
  "stylusSupremacy.insertNewLineAroundBlocks": false // 两个选择器中是否换行
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
学习JS面向对象成果 借国庆发布个最新作品与大家交流
Oct 03 Javascript
通过javascript的匿名函数来分析几段简单有趣的代码
Jun 29 Javascript
js实现的复制兼容chrome和IE
Apr 03 Javascript
js事件监听器用法实例详解
Jun 01 Javascript
深入分析下javascript中的[]()+!
Jul 07 Javascript
js点击任意区域弹出层消失实现代码
Dec 27 Javascript
Angular.js中ng-if、ng-show和ng-hide的区别介绍
Jan 20 Javascript
angular 内存溢出的问题解决
Jul 12 Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
May 14 Javascript
小程序中英文混合排序问题解决
Aug 02 Javascript
JS实现基本的网页计算器功能示例
Jan 16 Javascript
es6函数之尾调用优化实例分析
Apr 25 Javascript
npm 语义版本控制详解
Sep 10 #Javascript
解决layui的input独占一行的问题
Sep 10 #Javascript
解决layer.open弹出框不能获取input框的值为空的问题
Sep 10 #Javascript
防止Layui form表单重复提交的实现方法
Sep 10 #Javascript
关于layui 弹出层一闪而过就消失的解决方法
Sep 09 #Javascript
解决layer弹出层中表单不起作用的问题
Sep 09 #Javascript
解决layui弹框失效的问题
Sep 09 #Javascript
You might like
PHP 和 MySQL 基础教程(三)
2006/10/09 PHP
php生成curl命令行的方法
2015/12/14 PHP
PHP实现Google plus的好友拖拽分组效果
2016/10/21 PHP
PHP进制转换实例分析(2,8,16,36,64进制至10进制相互转换)
2017/02/04 PHP
PHP常见过waf webshell以及最简单的检测方法
2019/05/21 PHP
Thinkphp5框架使用validate实现验证功能的方法
2019/08/27 PHP
js 页面输出值
2008/11/30 Javascript
W3C Group的JavaScript1.8 新特性介绍
2009/05/19 Javascript
IE浏览器打印的页眉页脚设置解决方法
2009/12/08 Javascript
jQuery判断iframe中元素是否存在的方法
2013/05/11 Javascript
javascript回车完美实现tab切换功能
2014/03/13 Javascript
Bootstrap每天必学之进度条
2015/11/30 Javascript
jquery的ajax提交form表单的两种方法小结(推荐)
2016/05/25 Javascript
vue.js将unix时间戳转换为自定义时间格式
2017/01/03 Javascript
基于Bootstrap分页的实例讲解(必看篇)
2017/07/04 Javascript
Angular6封装http请求的步骤详解
2018/08/13 Javascript
react组件从搭建脚手架到在npm发布的步骤实现
2019/01/09 Javascript
[03:45]Newbee战队出征西雅图 决战2016国际邀请赛
2016/08/02 DOTA
常见的在Python中实现单例模式的三种方法
2015/04/08 Python
python xml解析实例详解
2016/11/14 Python
PyCharm 常用快捷键和设置方法
2017/12/20 Python
tf.truncated_normal与tf.random_normal的详细用法
2018/03/05 Python
Python获取二维矩阵每列最大值的方法
2018/04/03 Python
django ajax json的实例代码
2018/05/29 Python
python 实现语音聊天机器人的示例代码
2018/12/02 Python
python子线程退出及线程退出控制的代码
2019/10/16 Python
美国著名童装品牌:OshKosh B’gosh
2016/08/05 全球购物
JRE、JDK、JVM之间的关系怎样
2012/05/16 面试题
什么是托管函数?托管函数有什么用?
2014/06/15 面试题
班级安全教育实施方案
2014/02/23 职场文书
代理协议书
2014/04/22 职场文书
会计岗位职责范本
2015/04/02 职场文书
暑假开始了,你的暑假学习计划写好了吗?
2019/07/04 职场文书
C站最全Python标准库总结,你想要的都在这里
2021/07/03 Python
Python写情书? 10行代码展示如何把情书写在她的照片里
2022/04/21 Python
使用CSS实现黑白格背景效果
2022/06/01 HTML / CSS