我正在使用vue-cli 2.9.3模板开发webpack应用程序。我有一个使用MapboxGL的组件,该组件通过import mapboxgl from 'mapbox-gl;'导入。

使用npm run dev在dev中一切正常。

我可以使用npm run build毫无问题地构建项目。但是,使用MapboxGL导航到组件时,在控制台上出现以下错误:

ReferenceError: e is not defined

Firefox或Chrome的DevTools无法链接到sourcemap(.js.map)文件,因此错误消息不是很有帮助。

我可以通过使用devtool: eval-source-map而不是devtool: source-map中的./config/index.js来使 bundle 包工作,但是 bundle 包大小变为> 8Mb,这是 Not Acceptable ,它是not recommended in production

我也尝试了不使用sourcemaps,但是出现了同样的神秘错误。

如何在打包的 bundle 包中调试此错误?我至少希望能够看到错误的来源。

最佳答案

看来这是带有MapboxGL和Webpack的known bug

可以通过在./build/webpack.prod.conf.js中添加以下内容来解决:

module: {
     ...
     noParse: /(mapbox-gl)\.js$/,
     ...
}

09-19 03:31