详解Vscode中使用Eslint终极配置大全


Posted in Javascript onNovember 08, 2019

在 vue项目中使用vscode编辑时,使用了如下这套配置,保存时就会根据既定vue项目中.eslintrc.js文件设置的既定规则自动校验并依据规则修复代码。

需安装插件

主要是这两个插件:

  • ESLint
  • Prettier - Code formatter

详解Vscode中使用Eslint终极配置大全

个人现用vscode插件截图.png

vscode中setting.json中配置

{
 // 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,
 "window.zoomLevel": 0 // 两个选择器中是否换行
}

vue项目中.eslintrc.js文件常用个性化配置

// https://eslint.org/docs/user-guide/configuring

module.exports = {
 root: false,
 parserOptions: {
  parser: 'babel-eslint'
 },
 env: {
  browser: true
 },
 extends: [
  // https://github.com/vuejs/eslint-plugin-vue#priority-a-essential-error-prevention
  // consider switching to `plugin:vue/strongly-recommended` or `plugin:vue/recommended` for stricter rules.
  'plugin:vue/essential',
  // https://github.com/standard/standard/blob/master/docs/RULES-en.md
  'standard'
 ],
 // required to lint *.vue files
 plugins: ['vue'],
 // add your custom rules here
 rules: {
  // allow async-await
  'generator-star-spacing': 'off',
  // allow debugger during development
  'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
  eqeqeq: 'off', // 不能始用==
  'no-unused-vars': 'off', // 消除未使用的变量
  'no-undef': 'off', // 未使用变量报错
  'no-unreachable': 'off' // 不能执行的代码检测
   //此处一下还可以根据个人习惯设置更多个性化内容
 }
}

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

Javascript 相关文章推荐
js 获取后台的字段 改变 checkbox的被选中的状态 代码
Jun 05 Javascript
js中如何把字符串转化为对象、数组示例代码
Jul 17 Javascript
jQuery中not()方法用法实例
Jan 06 Javascript
javascript学习笔记整理(概述、变量、数据类型简介)
Oct 25 Javascript
javascript对浅拷贝和深拷贝的详解
Oct 14 Javascript
js编写的treeview使用方法
Nov 11 Javascript
JSON与js对象序列化实例详解
Mar 16 Javascript
JavaScript高阶教程之“==”隐藏下的类型转换
Apr 11 Javascript
JS原型与继承操作示例
May 09 Javascript
详解在React-Native中持久化redux数据
May 22 Javascript
vue+express+jwt持久化登录的方法
Jun 14 Javascript
JS实现盒子拖拽效果
Feb 06 Javascript
Vue实例的对象参数options的几个常用选项详解
Nov 08 #Javascript
Vuex中实现数据状态查询与更改
Nov 08 #Javascript
vue实现将数据存入vuex中以及从vuex中取出数据
Nov 08 #Javascript
vue.js的简单自动求和计算实例
Nov 08 #Javascript
vue中get请求如何传递数组参数的方法示例
Nov 08 #Javascript
Vue搭建后台系统需要注意的问题
Nov 08 #Javascript
vue视频播放暂停代码
Nov 08 #Javascript
You might like
PHP注释实例技巧
2008/10/03 PHP
学习php设计模式 php实现合成模式(composite)
2015/12/08 PHP
10个值得深思的PHP面试题
2016/11/14 PHP
thinkphp5.1 文件引入路径问题及注意事项
2018/06/13 PHP
PHP PDOStatement::fetchAll讲解
2019/01/31 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
2019/03/25 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
2020/03/23 PHP
JQuery实现自定义对话框的代码
2008/06/15 Javascript
网络图片延迟加载实现代码 超越jquery控件
2010/03/27 Javascript
jquery.cvtooltip.js 基于jquery的气泡提示插件
2010/11/19 Javascript
利用jquery的获取JS文件中的字符串内容
2012/02/14 Javascript
jquery Moblie入门—hello world的示例代码学习
2013/01/08 Javascript
详解JavaScript基于面向对象之继承实例
2015/12/16 Javascript
DropDownList控件绑定数据源的三种方法
2016/12/24 Javascript
jQuery实现按比例缩放图片的方法
2017/04/29 jQuery
使用Bootstrap和Vue实现用户信息的编辑删除功能
2017/10/25 Javascript
Angular使用动态加载组件方法实现Dialog的示例
2018/05/11 Javascript
vue watch关于对象内的属性监听
2019/04/22 Javascript
jQuery 动画与停止动画效果实例详解
2020/05/19 jQuery
vue中解决拖拽改变存在iframe的div大小时卡顿问题
2020/07/22 Javascript
[34:44]Liquid vs TNC Supermajor 胜者组 BO3 第二场 6.4
2018/06/05 DOTA
Python多进程并发(multiprocessing)用法实例详解
2015/06/02 Python
python写一个md5解密器示例
2018/02/23 Python
对python打乱数据集中X,y标签对的方法详解
2018/12/14 Python
python3中property使用方法详解
2019/04/23 Python
PyQt5 多窗口连接实例
2019/06/19 Python
Python API自动化框架总结
2019/11/12 Python
Python 读取xml数据,cv2裁剪图片实例
2020/03/10 Python
加拿大时尚潮流大码女装购物网站:Addition Elle
2018/04/02 全球购物
假日旅行社实习自我鉴定
2013/09/24 职场文书
个人师德师风自我剖析材料
2014/09/29 职场文书
六查六看个人剖析材料
2014/10/14 职场文书
如何自己动手写SQL执行引擎
2021/06/02 MySQL
python之json文件转xml文件案例讲解
2021/08/07 Python
Docker部署Mysql8的实现步骤
2022/07/07 Servers
Java获取字符串编码格式实现思路
2022/09/23 Java/Android