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异或加解密效果代码
Jun 25 Javascript
Javascript学习笔记6 prototype的提出
Jan 11 Javascript
cnblogs 代码高亮显示后的代码复制问题解决实现代码
Dec 14 Javascript
jquery限制输入字数,并提示剩余字数实现代码
Dec 24 Javascript
javascript中attachEvent用法实例分析
May 14 Javascript
JS与jQ读取xml文件的方法
Dec 08 Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
Jul 27 Javascript
JavaScript第一篇之实现按钮全选、功能
Aug 21 Javascript
Node.js连接postgreSQL并进行数据操作
Dec 18 Javascript
实例讲解JavaScript截取字符串
Nov 30 Javascript
详解Vue中的scoped及穿透方法
Apr 18 Javascript
Vue实现导航栏的显示开关控制
Nov 01 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往windows中添加用户
2006/12/06 PHP
PHP程序员最常犯的11个MySQL错误小结
2010/11/20 PHP
PHP 并发场景的几种解决方案
2019/06/14 PHP
javaScript 数值型和字符串型之间的转换
2009/07/25 Javascript
JS打开层/关闭层/移动层动画效果的实例代码
2013/05/11 Javascript
让页面上两个div中的滚动条(滑块)同步运动示例
2013/08/07 Javascript
js与jQuery 获取父窗、子窗的iframe
2013/12/20 Javascript
html5+javascript制作简易画板附图
2014/04/25 Javascript
JS实现网页顶部向下滑出的全国城市切换导航效果
2015/08/22 Javascript
JS组件Bootstrap按钮组与下拉按钮详解
2016/05/10 Javascript
JavaScript遍历Json串浏览器输出的结果不统一问题
2016/11/03 Javascript
分类解析jQuery选择器
2016/11/23 Javascript
微信小程序 欢迎页面的制作(源码下载)
2017/01/09 Javascript
JS实现加载时锁定HTML页面元素的方法
2017/06/24 Javascript
解决Jquery下拉框数据动态获取的问题
2018/01/25 jQuery
详解Vue项目在其他电脑npm run dev运行报错的解决方法
2018/10/29 Javascript
利用Node.js如何实现文件循环覆写
2019/04/05 Javascript
js+css3实现简单时钟特效
2020/09/13 Javascript
[03:36]2014DOTA2 TI小组赛综述 八强诞生进军钥匙球馆
2014/07/15 DOTA
Python中使用logging模块打印log日志详解
2015/04/05 Python
Python中的模块和包概念介绍
2015/04/13 Python
从源码解析Python的Flask框架中request对象的用法
2016/06/02 Python
Python3学习urllib的使用方法示例
2017/11/29 Python
Python实现求数列和的方法示例
2018/01/12 Python
Python实现PS图像调整之对比度调整功能示例
2018/01/26 Python
Python3.6.2调用ffmpeg的方法
2019/01/10 Python
对pandas处理json数据的方法详解
2019/02/08 Python
python爬虫 线程池创建并获取文件代码实例
2019/09/28 Python
CSS3提交意见输入框样式代码
2014/10/30 HTML / CSS
突袭HTML5之Javascript API扩展5—其他扩展(应用缓存/服务端消息/桌面通知)
2013/01/31 HTML / CSS
HTML5实现锚点时请使用id取代name
2013/09/06 HTML / CSS
几个Shell Script面试题
2014/04/18 面试题
当当网软件测试笔试题
2015/11/24 面试题
业务经理岗位职责
2013/11/11 职场文书
预备党员入党思想汇报(范文)
2019/08/14 职场文书
使用css样式设计一个简单的html登陆界面的实现
2021/03/30 HTML / CSS