这个错误通常是由于 CssoWebpackPlugin 在尝试压缩文件时遇到了循环依赖或循环引用的情况,导致无限递归调用自身,最终达到了 JavaScript 引擎的最大调用栈深度。

解决方法可以尝试以下几种:

  1. 升级 CssoWebpackPlugin 的版本:有时候这个错误是由于 CssoWebpackPlugin 的版本过旧或者存在一些 bug 导致的,升级到最新版本可能会解决问题。

  2. 检查代码中的循环依赖:使用 Webpack 的时候,循环依赖是一个非常容易出现的问题,尤其是在使用动态 import 的场景下。可以使用 Webpack 的模块分析工具(如 webpack-bundle-analyzer)来找出循环依赖的源头,然后进行修复。

  3. 调整 CssoWebpackPlugin 的配置:在 CssoWebpackPlugin 的配置中,可以通过一些选项来调整压缩的行为。比如,可以尝试将 restructure 选项设置为 false,禁用重构操作;或者将 maxStackSize 选项设置为一个较大的值,增加调用栈的深度。不过这些选项的调整需要谨慎,可能会对压缩效果产生一定的影响。

  4. 使用其他的 CSS 压缩插件:如果 CssoWebpackPlugin 无法解决问题,可以尝试使用其他的 CSS 压缩插件,比如 cssnano、clean-css 等。这些插件也可以通过 Webpack 的插件机制来集成到打包流程中

taro 打包错误 from CssoWebpackPluginMaximum call stack size exceeded RangeError Maximum call stack size exceeded

原文地址: https://www.cveoy.top/t/topic/cnXk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录