vue项目打包报错:eslint.CLIEngine is not a constructor(必解决)

243 阅读1分钟

前言:

最近遇到一个问题,就是vue项目在打包发布生产的时候报错了,错误提示:eslint.CLIEngine is not a constructor,然后就在网上搜索了一下,给出的答案都是关闭掉eslint,很明显,项目是需要使用eslint的,不是说你想关就可以关,很明显不行。

解决方案:

首先要明白selint.CLIengine是什么东西,根据错误提示很明显他是一个构造函数,但是打包的时候并没有这个构造器,so?

查看eslint官方文档,在@7.0.0版本以上,eslint开始使用了 new Eslint()构造函数,取消了 new

CLIengine()构造函数。因此问题就找到了,想要不报错,就采用@7.0.0以下版本。

我这边的解决方案是指定版本:

  "dependencies": {
    "eslint": "^4.19.1"
  }

这样jenkins打包时npm下载的就是有eslint.CLIengine的版本了