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 相关文章推荐
jquery弹窗插件colorbox绑定动态生成元素的方法
Jun 20 Javascript
PageSwitch插件实现100种不同图片切换效果
Jul 28 Javascript
浅谈JavaScript 的执行顺序
Aug 07 Javascript
JS 动态加载js文件和css文件 同步/异步的两种简单方式
Sep 23 Javascript
基于vue-ssr服务端渲染入门详解
Jan 08 Javascript
vue实现未登录跳转到登录页面的方法
Jul 17 Javascript
使用pkg打包Node.js应用的方法步骤
Oct 19 Javascript
简单两步使用node发送qq邮件的方法
Mar 01 Javascript
详解auto-vue-file:一个自动创建vue组件的包
Apr 26 Javascript
Vue $emit()不能触发父组件方法的原因及解决
Jul 28 Javascript
编写v-for循环的技巧汇总
Dec 01 Javascript
Vue OpenLayer 为地图绘制风场效果
Apr 24 Vue.js
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对称加密算法示例
2014/05/07 PHP
浅谈php命令行用法
2015/02/04 PHP
实现PHP+Mysql无限分类的方法汇总
2015/03/02 PHP
PHP脚本自动识别验证码查询汽车违章
2016/12/20 PHP
PHP实现获取毫秒时间戳的方法【使用microtime()函数】
2019/03/01 PHP
laravel框架实现去掉URL中index.php的方法
2019/10/12 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
打开超链需要“确认”对话框的方法
2007/03/08 Javascript
重载toString实现JS HashMap分析
2011/03/13 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
JS实现仿FLASH效果的竖排导航代码
2015/09/15 Javascript
关于在Servelet中如何获取当前时间的操作方法
2016/06/28 Javascript
js制作网站首页图片轮播特效代码
2016/08/30 Javascript
微信小程序 Storage API实例详解
2016/10/02 Javascript
js学使用setTimeout实现轮循动画
2017/07/17 Javascript
javascript数据结构之多叉树经典操作示例【创建、添加、遍历、移除等】
2018/08/01 Javascript
微信小程序-form表单提交代码实例
2019/04/29 Javascript
jQuery操作attr、prop、val()/text()/html()、class属性
2019/05/23 jQuery
JS中的算法与数据结构之集合(Set)实例详解
2019/08/20 Javascript
[02:37]2018DOTA2亚洲邀请赛赛前采访 VP.no[o]ne心中最强SOLO是谁
2018/04/04 DOTA
[49:05]Newbee vs TNC 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[43:43]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第三场 11.29
2020/12/02 DOTA
python 实现归并排序算法
2012/06/05 Python
Python中static相关知识小结
2018/01/02 Python
opencv改变imshow窗口大小,窗口位置的方法
2018/04/02 Python
Python语言检测模块langid和langdetect的使用实例
2019/02/19 Python
python使用turtle绘制国际象棋棋盘
2019/05/23 Python
python按比例随机切分数据的实现
2019/07/11 Python
通过celery异步处理一个查询任务的完整代码
2019/11/19 Python
解决pycharm中的run和debug失效无法点击运行
2020/06/09 Python
Python Opencv轮廓常用操作代码实例解析
2020/09/01 Python
旅游管理专业学生求职信
2013/09/28 职场文书
父母对孩子的寄语
2014/04/09 职场文书
2014年祖国生日寄语
2014/09/19 职场文书
乡镇党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
NGINX 权限控制文件预览和下载的实现原理
2022/01/18 Servers