我有一个当前的RequireJS应用程序,我们正在转换为Webpack。但是,应用程序的某些部分是动态加载的,这意味着它们当然不能成为Webpack包的一部分。这很好,我们只会使用RequireJS。
但是,那些动态加载的部分可能会引用静态应用程序的部分内容。当然,这会导致RequireJS加载原始的预捆绑代码并实例化它,导致代码重复,例如。事件消息传递总线不能在Webpack和RequireJS世界之间共享。
现在的问题是;是否有可能以某种方式将Webpack配置为bundle的某些已知部分,然后配置RequireJS从bundle中加载它们?
答案 0 :(得分:0)
我找到了解决这个问题的方法。
答案是明确定义那些我希望RequireJS在程序开始时从Webpack bundle访问的部分。
基本上这意味着在RequireJS配置中我会改变
paths: { "utils" : "frontend-modules/utils" }
与
import errorUtils from "utils/error";
window.define("utils/error", () => errorUtils);
为utils
目录中的每个实用程序库。
一个非常讨厌的解决方案,当然,但需要为RequireJS保留额外的库以及获取它们的需要。