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 相关文章推荐
JS 参数传递的实际应用代码分析
Sep 13 Javascript
js禁止回车提交表单的示例代码
Dec 23 Javascript
处理文本部分内容的TextRange对象应用实例
Jul 29 Javascript
js图片跟随鼠标移动代码
Nov 26 Javascript
Bootstrap插件全集
Jul 18 Javascript
微信小程序 前端源码逻辑和工作流详解
Oct 08 Javascript
巧用数组制作图片切换js代码
Nov 29 Javascript
Vue自定义指令拖拽功能示例
Feb 17 Javascript
让Vue也可以使用Redux的方法
May 23 Javascript
node.js部署之启动后台运行forever的方法
May 23 Javascript
jQuery HTML获取内容和属性操作实例分析
May 20 jQuery
Vue实现todo应用的示例
Feb 20 Vue.js
微信小程序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根据图片色界在不同位置加水印的方法
2015/07/01 PHP
PHP实现移除数组中为空或为某值元素的方法
2017/01/07 PHP
PHP实现批量修改文件名的方法示例
2019/09/18 PHP
JavaScript 创建对象
2009/07/17 Javascript
基于jquery的textarea发布框限制文字字数输入(添加中文识别)
2012/02/16 Javascript
JavaScript实现自己的DOM选择器原理及代码
2013/03/04 Javascript
jQuery+css+html实现页面遮罩弹出框
2013/03/21 Javascript
iframe的父子窗口之间的对象相互调用基本用法
2013/09/03 Javascript
jsPDF导出pdf示例
2014/05/02 Javascript
一个html5播放视频的video控件只支持android的默认格式mp4和3gp
2014/05/08 Javascript
JS替换字符串中字符即替换全部而不是第一个
2014/06/04 Javascript
简介JavaScript中用于处理正切的Math.tan()方法
2015/06/15 Javascript
js实现简单秒表走动的时钟特效
2020/03/25 Javascript
javascript如何操作HTML下拉列表标签
2015/08/20 Javascript
JavaScript事件 "事件对象"的注意要点
2016/01/14 Javascript
jQuery判断浏览器并动态调整select宽度的方法
2016/03/02 Javascript
基于jQuery实现动态搜索显示功能
2016/05/05 Javascript
新入门node.js必须要知道的概念(必看篇)
2016/08/10 Javascript
Vue.js系列之项目结构说明(2)
2017/01/03 Javascript
jQuery初级教程之网站品牌列表效果
2017/08/02 jQuery
vue 指令之气泡提示效果的实现代码
2018/10/18 Javascript
Vue 实现复制功能,不需要任何结构内容直接复制方式
2019/11/09 Javascript
利用Python查看目录中的文件示例详解
2017/08/28 Python
Pycharm 设置默认头的图文教程
2019/01/17 Python
处理python中多线程与多进程中的数据共享问题
2019/07/28 Python
python自动识别文本编码格式代码
2019/12/26 Python
python实现sm2和sm4国密(国家商用密码)算法的示例
2020/09/26 Python
Python descriptor(描述符)的实现
2020/11/15 Python
python实现简单猜单词游戏
2020/12/24 Python
Urban Outfitters德国官网:美国跨国生活方式零售公司
2018/05/21 全球购物
ProBikeKit德国:在线公路自行车专家
2018/06/03 全球购物
西班牙家用电器和电子产品购物网站:Mi Electro
2019/02/25 全球购物
小学生民族团结演讲稿
2014/08/27 职场文书
小组组名及励志口号
2015/12/24 职场文书
2019奶茶店创业计划书范本!
2019/07/15 职场文书
在Docker容器中部署SQL Server
2022/04/11 Servers