ERROR in app.js from UglifyJs RangeError: Maximum call stack size exceeded

在使用webpack中的uglify时报错:

ERROR in app.js from UglifyJs
RangeError: Maximum call stack size exceeded

看了一下 github 的 issues。
https://github.com/mishoo/UglifyJS2/issues/414
这是uglify的问题, 因为uglify是递归调用的,当bundle.js文件特别大的时候就会超出栈的范围。

解决方法:

  1. 扩大栈的大小:
node --stack_size=100000 uglifyjs
  1. 换插件,我用的是这个方法:(这个就没有问题了)
    改用: terser-webpack-plugin
    地址:https://www.npmjs.com/package/terser-webpack-plugin
yarn add terser-webpack-plugin --dev

然后改webpack.config.js 在module.exports中添加

optimization: {
    
    
    minimizer: [
      new TerserJSPlugin({
    
    
        cache: true, // 是否缓存
        parallel: true, // 是否并行打包
        sourceMap: true,
      }),
    ],
  },

猜你喜欢

转载自blog.csdn.net/qq_42535651/article/details/108274348