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 相关文章推荐
Ext grid 添加右击菜单
Nov 26 Javascript
jquery 表格分页等操作实现代码(pagedown,pageup)
Apr 11 Javascript
JavaScript判断变量是对象还是数组的方法
Aug 28 Javascript
JavaScript中exec函数用法实例分析
Jun 08 Javascript
javascript显示中文日期的方法
Jun 18 Javascript
Javascript技术栈中的四种依赖注入小结
Feb 27 Javascript
javascript中FOREACH数组方法使用示例
Mar 01 Javascript
对于Javascript 执行上下文的全面了解
Sep 05 Javascript
jquery引入外部CDN 加载失败则引入本地jq库
May 23 jQuery
简单了解JavaScript中的执行上下文和堆栈
Jun 24 Javascript
解决vue动态路由异步加载import组件,加载不到module的问题
Jul 26 Javascript
使用Vue3+Vant组件实现App搜索历史记录功能(示例代码)
Jun 09 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模板引擎smarty生成随机数的方法和math函数详解
2014/04/24 PHP
php 参数过滤、数据过滤详解
2015/10/26 PHP
php中实现进程锁与多进程的方法
2016/09/18 PHP
Zend Framework入门教程之Zend_View组件用法示例
2016/12/09 PHP
Laravel Validator 实现两个或多个字段联合索引唯一
2019/05/08 PHP
laravel5.2表单验证,并显示错误信息的实例
2019/09/29 PHP
PHP的imageTtfText()函数深入详解
2021/03/03 PHP
js left,right,mid函数
2008/06/10 Javascript
chrome原生方法之数组
2011/11/30 Javascript
jQuery中bind()方法用法实例
2015/01/19 Javascript
jQuery form插件之ajaxForm()和ajaxSubmit()的可选参数项对象
2016/01/23 Javascript
JS实现图片平面旋转的方法
2016/03/01 Javascript
angularjs中ng-attr的用法详解
2016/12/31 Javascript
BootStrap表单宽度设置方法
2017/03/10 Javascript
Bootstrap Table使用整理(二)
2017/06/09 Javascript
Vue配合iView实现省市二级联动的示例代码
2018/07/27 Javascript
深入理解Promise.all
2018/08/08 Javascript
原生JS实现的放大镜特效示例【测试可用】
2018/12/08 Javascript
es6基础学习之解构赋值
2018/12/10 Javascript
十条建议帮你提高Python编程效率
2016/02/16 Python
Python数据分析中Groupby用法之通过字典或Series进行分组的实例
2017/12/08 Python
python3+requests接口自动化session操作方法
2018/10/13 Python
Python字典底层实现原理详解
2019/12/18 Python
Python数据存储之 h5py详解
2019/12/26 Python
python 线性回归分析模型检验标准--拟合优度详解
2020/02/24 Python
Python生成器实现简单"生产者消费者"模型代码实例
2020/03/27 Python
使用IPython或Spyder将省略号表示的内容完整输出
2020/04/20 Python
css3动画 小球滚动 js控制动画暂停
2019/11/29 HTML / CSS
党风廉设责任书
2014/04/16 职场文书
信用卡结清证明怎么写
2014/09/13 职场文书
2014年应急管理工作总结
2014/11/26 职场文书
欠款起诉书范文
2015/05/19 职场文书
就业证明函
2015/06/17 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
Redis数据结构之链表与字典的使用
2021/05/11 Redis
Oracle 死锁的检测查询及处理
2021/09/25 Oracle