我正在使用2个模块,它们正在使用" window.ModuleName"出口自己。它们都使用相同的ModuleName。
window.z = a;
window.z = b
第一个模块a
是独立模块,因为我在需要时通过$.getScript
导入它。
第二个模块b
通过webpack捆绑在一起。
模块a
window.z
在加载时覆盖模块b
window.z
。因此,我想通过webpack或任何其他可能性,通过webpack而不是窗口范围将模块分配给变量或命名空间来更改模块b
的范围。
newScope.z = a
这两个模块都没有我定义,因此,我无法更改导出。 有什么办法专业吗?
答案 0 :(得分:0)
创建一个startup.js文件(在你需要a或b之前包含/需要)你执行此操作:
require('a')
var z1 = window.z
window.z1 = z1
require('b')
现在window.z1是a.z,window.z是b.z,哟他们俩都是
答案 1 :(得分:0)
我只能通过在webpack中使用字符串替换加载器来解决这个问题,并从python -m pip install numpy
替换模块b
的导出。
不幸的是,似乎没有可能将变量的范围从窗口全局对象更改为本地对象。