vue2.0报错:Syntax Error: TypeError: eslint.CLIEngine is not a constructor
lintOnSave
配置
Type: boolean | 'warning' | 'default' | 'error'
Default: true
设置是否在开发环境下每次保存代码时都启用 eslint验证
false:关闭每次保存都进行检测
true:开启每次保存都进行检测,效果与warning一样
‘warning’:开启每次保存都进行检测,lint 错误将显示到控制台命令行,而且编译并不会失败。
‘error’:开启每次保存都进行检测,lint 错误将显示到浏览器页面上,且编译失败。
‘default’:同’error’
用法:
module.exports = {
publicPath: './', // 基本路径
outputDir: 'dist', // 输出文件目录
assetsDir: './assets',
indexPath: 'index.html',
filenameHashing: true, // 生成的静态资源在它们的文件名中包含了 hash 以便更好的控制缓存
lintOnSave: false, // eslint-loader 是否在保存的时候检查
}
vue cli 3 lintOnSave 配置有时无效问题
一个使用vue cli 3.2创建的项目,创建时未开启 lintOnSave,后来希望开启并设置为 lintOnSave: ‘error’,但配置不生效。
解决方法1:新创建项目(此时vue cli 版本为 3.4)并开启 lintOnSave,然后删除其中所有文件,将旧有项目所有代码(包括node_modules)移动到新项目文件夹,发现lintOnSave报错页面提示有。
解决方法2:在 vue.config.js 中配置:
module.exports = {
devServer: {
overlay: {
warnings: true,
errors: true
}
},
lintOnSave: 'error',
chainWebpack: config => {
config.module.rule('eslint').use('eslint-loader').loader('eslint-loader').tap(opt => {
opt.emitWarning = opt.emitError = opt.failOnWarning = opt.failOnError = true;
return opt;
});
}
};