VSCode使用之Vue工程配置eslint


Posted in Javascript onApril 30, 2019

首先确保VS Code 安装了 Vetur 和 Eslint 插件。

然后使用了vue-cli提供的简单webpack模板,这样创建的工程默认没有添加ESLint。

vue init webpack-simple test-vscode

配置过程

全局安装最新的eslint

npm i -g eslint@latest

运行

eslint --init

VSCode使用之Vue工程配置eslint

会安装以下依赖

eslint-config-standard@latest
eslint-plugin-import@>=2.2.0
eslint-plugin-node@>=5.2.1
eslint-plugin-promise@>=3.5.0
eslint-plugin-standard@>=3.0.0

同时在项目目录下生成.eslintrc.js文件。里面只有最基本的内容:

module.exports = {
 "extends": "standard"
};

表明我们使用的规则是standard规范所定义的规则。

然后本地安装最新的eslint

npm i -D eslint@latest

package.jsonscripts中添加一行:

"lint": "eslint --ext .js,.vue src"

运行:

npm run lint

VS Code会提示我们找不到eslint-config-standard

VSCode使用之Vue工程配置eslint

安装它:

npm i -D eslint-config-standard

然后运行

npm run lint

这时就会有报错的提示了。

VSCode使用之Vue工程配置eslint

VSCode使用之Vue工程配置eslint 

4. 但是在.vue文件中出错的地方并没有相应的提示。这时Vetur排上用场了。 在VS Code的设置里面添加如下规则:

{
"eslint.validate": [
  "javascript",
  "javascriptreact",
  {
    "language": "vue",
   "autoFix": true
  }
 ]
}

这样就添加了对.vue文件的支持。

5. 但是这样会对.vue文件中的标签报解析错误

VSCode使用之Vue工程配置eslint 

这时需要安装eslint-plugin-vue@next插件。

npm install -D eslint-plugin-vue@next

同时在.eslintrc.js中添加使用vue插件的扩展。

// .eslintrc.js
module.exports = {
 "extends": [
   "standard",
   "plugin:vue/base"
  ]
}

这样,就可以对.vue文件提供实时检查的功能了。

6. 对于多余的逗号这种错误,可以在保存的时候让eslint插件自动修复。 更改VS Code中的设置,添加如下规则:

{
 "eslint.autoFixOnSave": true
}

总结

通过使用VS Code的插件 Vetur 、ESLint来对Vue工程中的.vue提供代码检查的功能。

1. 需要安装的依赖:
json

"eslint": "^4.14.0", 
"eslint-config-standard": "^11.0.0-beta.0", 
"eslint-plugin-import": "^2.8.0", 
"eslint-plugin-node": "^5.2.1", 
"eslint-plugin-promise": "^3.6.0", 
"eslint-plugin-standard": "^3.0.1", 
"eslint-plugin-vue": "^4.0.0-beta.4",

注意: 这里 ESLinteslint-plugin-vue需要是最新的。

2. .eslintrc的配置
js

module.exports = { 
"extends": [ 
"standard", 
"plugin:vue/base" 
] 
};

3. VS Code 的配置
json

{ 
"eslint.validate": [ 
"javascript", 
"javascriptreact", 
{ 
"language": "vue", 
"autoFix": true 
} 
], 
"eslint.autoFixOnSave": true 
}

参考资料:
Vetur文档
ESLint文档
eslint-plugin-vue

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

Javascript 相关文章推荐
浅析JavaScript中的delete运算符
Nov 30 Javascript
JavaScript 基础函数_深入剖析变量和作用域
May 18 Javascript
AngularJS中的包含详细介绍及实现示例
Jul 28 Javascript
js实现StringBuffer的简单实例
Sep 02 Javascript
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
Sep 19 Javascript
JS自定义混合Mixin函数示例
Nov 26 Javascript
bootstrap下拉菜单使用方法解析
Jan 13 Javascript
JavaScript数据结构中串的表示与应用实例
Apr 12 Javascript
ECMAscript 变量作用域总结概括
Aug 18 Javascript
在 Typescript 中使用可被复用的 Vue Mixin功能
Apr 17 Javascript
jQuery表单元素过滤选择器用法实例分析
Feb 20 jQuery
JQueryDOM之样式操作
Mar 27 jQuery
微信小程序API—获取定位的详解
Apr 30 #Javascript
基于JS开发微信网页录音功能的实例代码
Apr 30 #Javascript
vue前端框架—Mint UI详解(更适用于移动端)
Apr 30 #Javascript
详解Vue+ElementUI从零开始搭建自己的网站(一、环境搭建)
Apr 30 #Javascript
详解微信小程序用定时器实现倒计时效果
Apr 30 #Javascript
TypeScript开发Node.js程序的方法
Apr 30 #Javascript
js时间戳转yyyy-MM-dd HH-mm-ss工具类详解
Apr 30 #Javascript
You might like
Laravel框架实现redis集群的方法分析
2017/09/14 PHP
javascript window.confirm确认 取消对话框实现代码小结
2012/10/21 Javascript
JS中for循序中延迟加载动态效果的具体实现
2013/08/18 Javascript
JS格式化数字金额用逗号隔开保留两位小数
2013/10/18 Javascript
JS+CSS实现自动切换的网页滑动门菜单效果代码
2015/09/14 Javascript
JavaScript中用let语句声明作用域的用法讲解
2016/05/20 Javascript
JavaScript浏览器对象之一Window对象详解
2016/06/03 Javascript
基于 webpack2 实现的多入口项目脚手架详解
2017/06/26 Javascript
实例详解BootStrap的动态模态框及静态模态框
2018/08/13 Javascript
对vue下点击事件传参和不传参的区别详解
2018/09/15 Javascript
小程序实现留言板
2018/11/02 Javascript
详解如何为你的angular app构建一个第三方库
2018/12/07 Javascript
angular 用Observable实现异步调用的方法
2018/12/27 Javascript
浅谈JS和jQuery的区别
2019/03/27 jQuery
微信小程序实现form表单本地储存数据
2019/06/27 Javascript
vue 子组件watch监听不到prop的解决
2020/08/09 Javascript
python自动化测试之连接几组测试包实例
2014/09/28 Python
Python编程入门的一些基本知识
2015/05/13 Python
Python正则表达式如何进行字符串替换实例
2016/12/28 Python
Python的numpy库中将矩阵转换为列表等函数的方法
2018/04/04 Python
使用Python获取网段IP个数以及地址清单的方法
2018/11/01 Python
python的常用模块之collections模块详解
2018/12/06 Python
flask 框架操作MySQL数据库简单示例
2020/02/02 Python
博士研究生自我鉴定范文
2013/12/04 职场文书
实习生单位鉴定意见
2013/12/04 职场文书
教师职称自我鉴定
2014/02/12 职场文书
2014年三八妇女节活动总结
2014/03/01 职场文书
家长会主持词
2014/03/26 职场文书
水毁工程实施方案
2014/04/01 职场文书
机关单位工作失职检讨书
2014/11/20 职场文书
学校三八妇女节活动总结
2015/02/06 职场文书
入党转正介绍人意见
2015/06/03 职场文书
详解nginx.conf 中 root 目录设置问题
2021/04/01 Servers
基于Go语言构建RESTful API服务
2021/07/25 Golang
Python使用华为API为图像设置多个锚点标签
2022/04/12 Python
使用vue判断当前环境是安卓还是IOS
2022/04/12 Vue.js