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 相关文章推荐
jquery 页面滚动到指定DIV实现代码
Sep 25 Javascript
js history对象简单实现返回和前进
Oct 30 Javascript
Jquery节点遍历next与nextAll方法使用示例
Jul 22 Javascript
原生Ajax 和jQuery Ajax的区别示例分析
Dec 17 Javascript
js表单处理中单选、多选、选择框值的获取及表单的序列化
Mar 08 Javascript
用angular实现多选按钮的全选与反选实例代码
May 23 Javascript
将angular.js项目整合到.net mvc中的方法详解
Jun 29 Javascript
理解 JavaScript EventEmitter
Mar 29 Javascript
在vue中给列表中的奇数行添加class的实现方法
Sep 05 Javascript
使用JavaScript保存文本文件到本地的两种方法
Jan 22 Javascript
angular8和ngrx8结合使用的步骤介绍
Dec 01 Javascript
vue实现几秒后跳转新页面代码
Sep 09 Javascript
微信小程序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
php开发留言板的CRUD(增,删,改,查)操作
2012/04/19 PHP
php利用scws实现mysql全文搜索功能的方法
2014/12/25 PHP
PHP面向对象程序设计__tostring()和__invoke()用法分析
2019/06/12 PHP
js实现图片轮换效果代码
2013/04/16 Javascript
JS定时器实例详细分析
2013/10/11 Javascript
JS实现遮罩层效果的简单实例
2013/11/12 Javascript
JavaScript动态添加style节点的方法
2015/06/09 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
2015/06/26 Javascript
jquery购物车结算功能实现方法
2020/10/29 Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
2017/01/05 Javascript
基于canvas的二维码邀请函生成插件
2017/02/14 Javascript
js实现页面多个日期时间倒计时效果
2019/06/20 Javascript
react koa rematch 如何打造一套服务端渲染架子
2019/06/26 Javascript
javascript-hashchange事件和历史状态管理实例分析
2020/04/18 Javascript
[07:09]DOTA2-DPC中国联赛 正赛 Ehome vs Elephant 选手采访
2021/03/11 DOTA
用Python计算三角函数之acos()方法的使用
2015/05/15 Python
Tensorflow之Saver的用法详解
2018/04/23 Python
python3写的简单本地文件上传服务器实例
2018/06/04 Python
使用 Python 实现微信群友统计器的思路详解
2018/09/26 Python
对python 中re.sub,replace(),strip()的区别详解
2019/07/22 Python
Python Numpy中数据的常用保存与读取方法
2020/04/01 Python
Python通过zookeeper实现分布式服务代码解析
2020/07/22 Python
用css3实现转换过渡和动画效果
2020/03/13 HTML / CSS
详解HTML5通讯录获取指定多个人的信息
2016/12/20 HTML / CSS
html5唤醒APP小记
2019/03/27 HTML / CSS
Antler英国官网:购买安特丽行李箱、拉杆箱
2019/08/25 全球购物
STP的判定过程
2012/10/01 面试题
计算机应用专业毕业生求职信
2013/10/24 职场文书
在校大学生个人的自我评价
2014/02/13 职场文书
家长写给孩子的评语
2014/04/18 职场文书
班子个人四风问题整改措施
2014/10/04 职场文书
市委常委会班子党的群众路线教育实践活动整改方案
2014/10/25 职场文书
2014年班组工作总结
2014/11/20 职场文书
大学生饮品店创业计划书范文
2019/07/10 职场文书
SQL Server代理:理解SQL代理错误日志处理方法
2021/06/30 SQL Server
68行Python代码实现带难度升级的贪吃蛇
2022/01/18 Python