vue cli3.0 引入eslint 结合vscode使用


Posted in Javascript onMay 27, 2019

它的目标是提供一个插件化的javascript代码检测工具。官网地址

最近一个项目里,最开始使用 cli3.0 搭建的时候没有默认选用 eslint ,导致现在有的人使用其他编辑器,就会出现格式错乱的情况。所以引入 eslint 做代码检测

第一步 (安装)

npm install eslint eslint-config-airbnb-base eslint-plugin-import eslint-plugin-vue --save-dev 引入关于 eslint 的一些依赖 当你的 package.json 里出现

"eslint": "^5.16.0",
"eslint-config-airbnb-base": "^13.1.0",
"eslint-plugin-import": "^2.17.3",
"eslint-plugin-vue": "^5.2.2",

说明安装成功

第二步(检测)

package.json 文件的命令行 sctipts 里面添加

"lint": "eslint --ext .js,.vue src" 批量检测代码

vue cli3.0 引入eslint 结合vscode使用 

Example:

vue cli3.0 引入eslint 结合vscode使用

运行

npm run lint

vue cli3.0 引入eslint 结合vscode使用

面板会提示有xx个错误,而且会标明哪个文件。

而且会提示你是用 --fix 进行修复

第三部(修复)

上面的 "lint": "eslint --ext .js,.vue src" 修改为 eslint --ext .js,.vue src --fix

运行

npm run lint

vue cli3.0 引入eslint 结合vscode使用 

这是就没有 errorswarning

至此 eslint 已经引入,并且可以自动修复。但是 --fix 并不能完全修复代码,比如

vue cli3.0 引入eslint 结合vscode使用

就会提示 'vm'被定义但是未被使用

vue cli3.0 引入eslint 结合vscode使用

就需要手动删掉

配合 vscode 使用

目的: 使用vscode到达保存就自动fix的效果

1.安装

下载地址

2.安装 eslint

vue cli3.0 引入eslint 结合vscode使用 

3.设置 eslint

打开 文件-》首选项-》设置,找到并打开 setting.json 添加如下配置

{
 "eslint.enable": true, // 是否开启检测
 "editor.tabSize": 2,
 "eslint.autoFixOnSave": true,
 "files.associations": {
 "*.vue": "vue"
 },
 "eslint.options": {
 "extensions": [
  ".js",
  ".vue"
 ]
 },
 "eslint.validate": [
 "javascript",{
  "language": "vue",
  "autoFix": true
 },
 "html",
 "vue"
 ],
}

4.安装 Vetur 插件

Vetur 能够在 vscode1 编辑器里面识别 .vue 文件并且对文件可以:

  1. 语法高亮
  2. 语法提示,补全功能
  3. 语法检测

5.配置完成

这个时候就会有提示

vue cli3.0 引入eslint 结合vscode使用

ctrl+s 就自动修复了

vue cli3.0 引入eslint 结合vscode使用

tips: 有时按一次 ctrl+s 修复不了,多按几次就好了,不过我一般写一段就 ctrl+s 一下,问题不大。

Javascript 相关文章推荐
做网页的一些技巧(续)
Feb 01 Javascript
javascript学习笔记(七)利用javascript来创建和存储cookie
Apr 08 Javascript
跟我学习javascript解决异步编程异常方案
Nov 23 Javascript
AngularJS入门心得之directive和controller通信过程
Jan 25 Javascript
第一章之初识Bootstrap
Apr 25 Javascript
jQuery Dialog 打开时自动聚焦的解决方法(两种方法)
Nov 24 Javascript
JavaScript中防止微信浏览器被整体拖动的方法
Aug 25 Javascript
react-redux中connect的装饰器用法@connect详解
Jan 13 Javascript
jquery实现的分页显示功能示例
Aug 23 jQuery
小程序两种滚动公告栏的实现方法
Sep 17 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
Jan 18 Javascript
在vue项目中利用popstate处理页面返回的操作介绍
Aug 06 Javascript
深入浅出了解Node.js Streams
May 27 #Javascript
JavaScript怎样在删除前添加确认弹出框?
May 27 #Javascript
vue项目前端错误收集之sentry教程详解
May 27 #Javascript
了解javascript中变量及函数的提升
May 27 #Javascript
基于vue实现一个禅道主页拖拽效果
May 27 #Javascript
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
May 27 #jQuery
初学node.js中实现删除用户路由
May 27 #Javascript
You might like
浏览器预览PHP文件时顶部出现空白影响布局分析原因及解决办法
2013/01/11 PHP
汇总PHPmailer群发Gmail的常见问题
2016/02/24 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
php的instanceof和判断闭包Closure操作示例
2020/01/26 PHP
关于html+ashx开发中几个问题的解决方法
2011/07/18 Javascript
js操作table示例(个人心得)
2013/11/29 Javascript
JavaScript子类用Object.getPrototypeOf去调用父类方法解析
2013/12/05 Javascript
JavaScript通过正则表达式实现表单验证电话号码
2014/03/07 Javascript
jQuery模拟点击A标记示例参考
2014/04/17 Javascript
js实现Select下拉框具有输入功能的方法
2015/02/06 Javascript
jQuery+easyui中的combobox实现下拉框特效
2015/02/27 Javascript
javascript实现多栏闭合展开式广告位菜单效果实例
2015/08/05 Javascript
JS实现队列与堆栈的方法
2016/04/21 Javascript
jquery自定义插件开发之window的实现过程
2016/05/06 Javascript
jquery输入数字随机抽奖特效的简单实现代码
2016/06/10 Javascript
详解JavaScript树结构
2017/01/09 Javascript
layUI实现三级导航菜单效果
2019/07/26 Javascript
JS实现页面数据懒加载
2020/02/13 Javascript
小程序按钮避免多次调用接口和点击方案实现(不用showLoading)
2020/04/15 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
2020/07/18 Javascript
JS面向对象实现飞机大战
2020/08/26 Javascript
[45:16]完美世界DOTA2联赛PWL S3 Magma vs Phoenix 第一场 12.12
2020/12/16 DOTA
Python编程修改MP3文件名称的方法
2017/04/19 Python
python中利用await关键字如何等待Future对象完成详解
2017/09/07 Python
对python条件表达式的四种实现方法小结
2019/01/30 Python
python多线程案例之多任务copy文件完整实例
2019/10/29 Python
python网络编程之五子棋游戏
2020/05/14 Python
自学考试自我鉴定范文
2013/09/26 职场文书
库房主管岗位职责
2013/12/31 职场文书
教学实验楼管理制度
2014/02/01 职场文书
装饰活动策划方案
2014/02/11 职场文书
主要领导对照检查材料
2014/08/26 职场文书
2014年会计人员工作总结
2014/12/10 职场文书
给女朋友道歉的话大全
2015/01/20 职场文书
毕业生就业推荐表自我评价
2015/03/02 职场文书
python unittest单元测试的步骤分析
2021/08/02 Python