我正在将一个使用 webpack 的项目从 v4 升级到 v5,虽然现在所有编译都没有错误(经过一些最小的调整),但我注意到输出格式完全不同。在 v4 下,它的外部结构如下:
(function(modules) {
...
});
而现在在 v5 中,它的结构如下:
(() => {
...
})();
我认为这对我们项目中使用输出的特定方式造成了问题(具体来说,后者似乎被调用,但前者似乎没有被调用)。
是否有更改 v5 中默认输出的设置?
我尝试查看output.iife
文档中的(无效果)和其他内容,但没有看到适合我的内容。我确定我遗漏了一些明显的东西。
更新:
有了@felixmosh 的回答,我就成功了。现在使用函数语法而不是 lambda 语法是一致的,但仍然存在一个问题,即 v5 变体似乎是自执行的,而 v4 不是。
我根据 webpack 入门示例在 GitHub 上添加了一个 repro: https ://github.com/tlmii/webpack-v4-to-v5-example