问题
Vue开发中,特别是当你阅读分析别人的其中早期版本的Vue代码时往往会遭遇到满屏幕的烦人的EsLint错误。有关EsLint这个工具的作用不再赘述。查阅网上参考文档,大多是针对早起版本Vue CLI工具项目的,在我最新使用的Vue CLI 3生成的工程中根本不起作用。无奈之下,认真学习了Vue CLI 3官方文档,终于找到最佳答案。
办法
Vue这个前端框架相对于React和Angular,入门会非常快。但是,到了中后期实战阶段仍然有许多工程实际问题需要我们一块一块地攻克。Vue CLI这个被称为“脚手架”的工具是必须克服的拦路虎,不过,这个工具版本更新非常快。观察网络上的许多案例及手头参考书,即使是最新的,主要是基于2.X版本介绍的。在解决如题所示问题时当前的3.X版本自然与2.X版本大不一样。在Vue CLI 3生成的工程中只要在项目根目录下创建一下配置文件vue.config.js,然后在其中加入下面一行即可屏蔽烦人的EsLint各种提示。提示:文后参考资料2中直接提到此种方法。
// vue.config.js
module.exports = {
lintOnSave: false
}
补充
在网络上搜索到的各种参考中,一般都是提到把文件.eslintrc.js中的各种规则开关进行修改,如下所示:
module.exports = {
root: true,
env: {
node: true
},
'extends': [
'plugin:vue/essential',
'@vue/standard'
],
rules: {
'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off',
'no-mixed-spaces-and-tabs': [0,false],
'no-tabs':'on',
'eol-last':0,
'space-before-function-paren': 0
},
parserOptions: {
parser: 'babel-eslint'
}
}
各位请注意上述rules段中的部分,在CLI 3下仅修改这些部分根本不起作用!
另外,经过上面LintOnSave办法的开关控制后,我反复地修改并在WebStorm内置命令行下运行yarn serve重新编译项目,有很多时候感觉还是有点问题,我怀疑是Vue CLI 3中存在一定的BUG所致(我使用的版本是3.0.5),目前最新版本是3.1.1。