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实现的使用方向键控制光标在table单元格中切换
Nov 17 Javascript
js格式化金额可选是否带千分位以及保留精度
Jan 28 Javascript
Javascript数组与字典用法分析
Dec 13 Javascript
JavaScript中的getTimezoneOffset()方法使用详解
Jun 10 Javascript
jQuery实现淡入淡出二级下拉导航菜单的方法
Aug 28 Javascript
WordPress中鼠标悬停显示和隐藏评论及引用按钮的实现
Jan 12 Javascript
AngularJS ng-controller 指令简单实例
Aug 01 Javascript
jQuery实现ajax的叠加和停止(终止ajax请求)
Aug 08 Javascript
微信小程序实现选项卡功能
Jun 19 Javascript
jquery分页优化操作实例分析
Aug 23 jQuery
element-ui中el-upload多文件一次性上传的实现
Dec 02 Javascript
JS中箭头函数与this的写法和理解
Jan 14 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数组去重复数据示例
2014/02/25 PHP
跟我学Laravel之请求(Request)的生命周期
2014/10/15 PHP
php实现头像上传预览功能
2017/04/27 PHP
setTimeout与setInterval在不同浏览器下的差异
2010/01/24 Javascript
Javascript 去除数组的重复元素
2010/05/04 Javascript
jquery对表单操作2
2011/04/06 Javascript
jQuery实战之仿淘宝商城左侧导航效果
2011/04/12 Javascript
微信内置浏览器私有接口WeixinJSBridge介绍
2015/05/25 Javascript
Bootstrap导航栏各元素操作方法(表单、按钮、文本)
2015/12/28 Javascript
解析浏览器端的AJAX缓存机制
2016/06/21 Javascript
jQuery插件jquery.kxbdmarquee.js实现无缝滚动效果
2017/02/15 Javascript
JS对象创建的几种方式整理
2017/02/28 Javascript
基于jquery的on和click的区别详解
2018/01/15 jQuery
jQuery模拟12306城市选择框功能简单实现方法示例
2018/08/13 jQuery
利用node 判断打开的是文件 还是 文件夹的实例
2019/06/10 Javascript
[26:24]完美副总裁、DOTA2负责人蔡玮专访:电竞如人生
2014/09/11 DOTA
[01:14]辉夜杯战队访谈宣传片—NEWBEE.Y
2015/12/26 DOTA
python3+PyQt5重新实现QT事件处理程序
2018/04/19 Python
解决django前后端分离csrf验证的问题
2019/02/03 Python
python队列Queue的详解
2019/05/10 Python
Pycharm如何打断点的方法步骤
2019/06/13 Python
django中的数据库迁移的实现
2020/03/16 Python
利用CSS3的定位页面元素
2009/08/29 HTML / CSS
销售顾问的岗位职责
2013/11/13 职场文书
服务员自我评价
2014/01/25 职场文书
人民教师求职自荐信
2014/03/12 职场文书
心理学专业求职信
2014/06/16 职场文书
2015毕业设计工作总结
2015/07/24 职场文书
远程教育集中轮训基层干部培训班学习心得体会
2016/01/09 职场文书
教学反思怎么写
2016/02/24 职场文书
私人贷款担保书该怎么写呢?
2019/07/02 职场文书
SQL Server基本使用和简单的CRUD操作
2021/04/05 SQL Server
MySQL高速缓存启动方法及参数详解(query_cache_size)
2021/07/01 MySQL
《巫师》是美食游戏?CDPR10月将推出《巫师》官方食谱
2022/04/03 其他游戏
vue.js 使用原生js实现轮播图
2022/04/26 Vue.js
错误码NET::ERR_CERT_DATE_INVALID证书已过期解决方法?
2022/07/07 数码科技