我正在构建一个应用程序,可以根据需要加载各种模块(由不同的webpack配置生成的其他包)。 BaseModule
负责知道何时加载哪个包并导出一些默认类,如BaseUtils
。模块本身并不知道可能需要加载的所有可能的模块/包。
TestModule
是BaseModule
在运行时按需加载的模块之一,而TestModule
想要使用BaseUtils
。
问题是:require('basemodule/BaseUtils')
中是否有TestModule
,它有自己的webpack.config.js文件,BaseModule
列为外部文件?也就是说,有没有办法让生成的testmodule bundle重用生成的basemodule bundle中可用的模块?或者BaseModule是否需要导出到全局变量?
答案 0 :(得分:0)
注意:只是一个建议。我没试过这个。
我想到的一种方法是首先捆绑所有其他模块(TestModule
)并捆绑下一个BaseModule
的应用。这样,当TestModule
捆绑在一起时,BaseModule
捆绑包就可用了。 TestModule
文件夹中应该有BaseModule
个捆绑文件,因为当捆绑BaseModule
时,webpack需要此文件夹。因此,TestModule
的webpack.config将具有指向BaseModule
src文件夹下某个文件夹的输出路径。
注意:BaseUtils
应为CommonChunk
,因为TestModule
和BaseModule
都需要export const ADD_MAIL = 'ADD_MAIL';
export const DEL_MAIL = 'DEL_MAIL';
export function addMail(email) {
return {
type: ADD_MAIL,
email
}
}
export function delMail(id) {
return {
type: DEL_MAIL,
id
}
}
。