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 相关文章推荐
javascript 中String.match()与RegExp.exec()的区别说明
Jan 10 Javascript
jQuery不使用插件及swf实现无刷新文件上传
Dec 08 Javascript
基于javascript实现右下角浮动广告效果
Jan 08 Javascript
简单理解vue中el、template、replace元素
Oct 27 Javascript
javascript正则表达式模糊匹配IP地址功能示例
Jan 06 Javascript
Js apply方法详解
Feb 16 Javascript
jQuery的$.extend 浅拷贝与深拷贝
Mar 08 Javascript
jquery在vue脚手架中的使用方式示例
Aug 29 jQuery
Vuex中mutations与actions的区别详解
Mar 01 Javascript
Vue微信项目按需授权登录策略实践思路详解
May 07 Javascript
浅谈Vue.js路由管理器 Vue Router
Aug 16 Javascript
详解Vue2.5+迁移至Typescript指南
Aug 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
Thinkphp3.2.3分页使用实例解析
2016/07/28 PHP
php格式文件打开的四种方法
2018/02/24 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
addRule在firefox下的兼容写法
2006/11/30 Javascript
你必须知道的Javascript知识点之"字面量和对应类型"说明介绍
2013/04/23 Javascript
jQuery表格插件ParamQuery简单使用方法示例
2013/12/05 Javascript
Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面
2016/07/01 Javascript
angular-ui-sortable实现可拖拽排序列表
2016/12/28 Javascript
用vue和node写的简易购物车实现
2017/04/25 Javascript
React Native如何消除启动时白屏的方法
2017/08/08 Javascript
Vue-resource拦截器判断token失效跳转的实例
2017/10/27 Javascript
layui原生表单验证的实例
2019/09/09 Javascript
Vue+elementui 实现复杂表头和动态增加列的二维表格功能
2019/09/23 Javascript
纯 JS 实现放大缩小拖拽功能(完整代码)
2019/11/25 Javascript
深入理解webpack process.env.NODE_ENV配置
2020/02/23 Javascript
JavaScript接口实现方法实例分析
2020/05/16 Javascript
vue 实现把路由单独分离出来
2020/08/13 Javascript
[02:49]DOTA2完美大师赛首日观众采访
2017/11/23 DOTA
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
2015/05/22 Python
Python基于辗转相除法求解最大公约数的方法示例
2018/04/04 Python
PyQt5每天必学之单行文本框
2018/04/19 Python
python 基本数据类型占用内存空间大小的实例
2018/06/12 Python
python顺序的读取文件夹下名称有序的文件方法
2018/07/11 Python
对Python使用mfcc的两种方式详解
2019/01/09 Python
Python3 pip3 list 出现 DEPRECATION 警告的解决方法
2019/02/16 Python
用Python批量把文件复制到另一个文件夹的实现方法
2019/08/16 Python
基于Python 中函数的 收集参数 机制
2019/12/21 Python
python按照list中字典的某key去重的示例代码
2020/10/13 Python
应届生人事助理求职信
2013/11/09 职场文书
临床医学专业学生的自我评价分享
2013/11/21 职场文书
求职信模版
2013/11/30 职场文书
物理研修随笔感言
2014/02/14 职场文书
家具商场的活动方案
2014/08/16 职场文书
高校自主招生自荐信2015
2015/03/04 职场文书
聘任协议书(挂靠)
2015/09/21 职场文书
详解java如何集成swagger组件
2021/06/21 Java/Android