Vue2 项目安装eslint配置说明

Vue2 项目安装eslint配置说明

本指南都适配windows和mac下的开发项目

第一步:安装,全局eslint支持非vue项目,但vue项目必须是项目内安装eslint,且版本必须为v8.x.x

1、全局安装:eslint,版本v8.57.0 。

npm install eslint@8.57.0 -g

2、项目本地dev安装:eslint,切换到项目内,执行命令(必装,指定8.57.0版本,不然会默认安装最新版本,eslint配置文件不支持了)。

npm install eslint@8.57.0 -D

3、项目本地dev安装插件:eslint-plugin-vue(检测.vue文件里的js,必装)

npm install eslint-plugin-vue -D

安装后,项目内package.json的【devDependencies】会多出个【eslint-plugin-vue】,如图:

3、项目本地dev安装插件:eslint-plugin-html(若想检测.html文件里的js,可安装。不用就不装了)

npm install eslint-plugin-vue -D

安装后,项目内package.json的【devDependencies】会多出个【eslint-plugin-html】,如图:

4、vscode安装扩展插件:eslint(必装)

这个扩展的作用,大致是桥接作用,让eslint的规则及功能,融入在vscode里正常运行,最终在输出面板中显示检测结果。以及保存文件就修复错误等方便操作和其他配置。

第二步:配置

5、vscode打开设置:settings.json,写上以下代码,保存时自动修复代码,以及检测文件类型

json 复制代码
"editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
},
"eslint.validate": [
    "javascript",
    "html",
    "vue"
]

6、项目内根目录新建.eslintrc.js文件(检测规则配置文件)

java 复制代码
module.exports = {
    'root': true,
    'env': {
        'browser': true,
        'node': true,
        'commonjs': true,
        'es6': true
    },
    // 检测规则, vue3用:'plugin:vue/vue3-essential'
    'extends': [ 'plugin:vue/essential', 'eslint:recommended' ],
    'parserOptions': {
        'ecmaVersion': 'latest',
        'ecmaFeatures': {
            'jsx': true
        },
        'sourceType': 'module'
    },
    // eslint-plugin-*插件,只写最后个名称就行
    'plugins': [
        'vue',
        'html'
    ],
    // 声明全局变量
    'globals':{
        '$': true,
        'BMap': true,
        'NALA': true,
        'define': true,
        'require': true,
        'NProgress': true
    },

    // 0:关闭,1:警告,2:禁止   或者:off/warn/error
    'rules': {
        'no-cond-assign': 2,  // 禁止:在条件表达式中使用赋值语句
        'no-dupe-args': 2,  // 禁止:函数参数重名
        'no-unused-vars': 2,  // 禁止:未使用过的变量
        'semi': ['error', 'always'],  // 禁止:必须有分号
        'no-console': 1,  // 警告:代码中存在console.log
        'no-unreachable': 0,  // 警告:有无法执行的代码
        'quotes': ['warn', 'single'],  // 警告:字符串单引号
        'indent': ['off', 4],  // 关闭:缩进4个空格
        'linebreak-style': ['off', 'unix']  // 关闭:换行符
    }
};

7、项目内根目录新建.eslintignore文件(忽略eslint检测配置)

arduino 复制代码
dist  
node_modules  
build  
config  
!public  
public/*  
!public/index.html  
*.sh  
*.md  
*.scss  

它是按照从上到下的权重检测,比如:让eslint检测我们vue项目的首页index.html中的js代码,但其他文件不检测。

vbnet 复制代码
!public   //检测public文件夹
public/*  //忽略public里的所有文件
!public/index.html  //只检测public里的index.html

8、最后重启下vscode,查看输出面板,选择eslint,看看是否运行正常。如图检测出问题,完美!

相关推荐
毕设源码-朱学姐4 小时前
【开题答辩全过程】以 工厂能耗分析平台的设计与实现为例,包含答辩的问题和答案
java·vue.js
老前端的功夫6 小时前
Vue 3 性能深度解析:从架构革新到运行时的全面优化
javascript·vue.js·架构
前端小端长8 小时前
Vue 中 keep-alive 组件的原理与实践详解
前端·vue.js·spring
小胖霞10 小时前
企业级全栈项目(14) winston记录所有日志
vue.js·前端框架·node.js
OpenTiny社区10 小时前
TinyEngine2.9版本发布:更智能,更灵活,更开放!
前端·vue.js·低代码
老华带你飞10 小时前
列车售票|基于springboot 列车售票系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习·spring
幸运小圣11 小时前
深入理解ref、reactive【Vue3工程级指南】
前端·javascript·vue.js
狗哥哥11 小时前
🚀 拒绝重复造轮子!在 Vue3 项目中打造一套企业级“统一上传服务”(支持分片、秒传、断点续传)
vue.js·架构
汝生淮南吾在北11 小时前
SpringBoot+Vue在线考试系统
vue.js·spring boot·后端·毕业设计·毕设
幸运小圣11 小时前
【Vue3】 中 ref 与 reactive:状态与模型的深入理解
前端·javascript·vue.js