我有一个非常简单的包装器模块,它围绕运行脚本的环境设置的全局对象.包装器模块简单地执行:
module.exports = global.foobar;
Run Code Online (Sandbox Code Playgroud)
以前当我使用browserify时,这很好用.在浏览器中,global是一样的window.
但是,我正在切换到webpack并在运行webpack后意义global已经改变.在浏览器中,它不再是别名window,而是它undefined,而且我得到了cannot read property foobar of undefined.
现在,在我的包装器模块的情况下,我可以通过其他方式修复它,但我有其他依赖项,并进一步buffer使用包.该软件包也使用global(参见此处),并在运行webpack后崩溃:
Uncaught TypeError: Cannot read property 'TYPED_ARRAY_SUPPORT' of undefined
Run Code Online (Sandbox Code Playgroud)
有没有什么方法可以让webpack global以与浏览器化相同的方式处理,并且global是别名window?
我终于找到了问题.我有两个webpack构建:第一个构建我的库,第二个构建演示.问题是两个配置都有:
{
node: {
global: true
}
}
Run Code Online (Sandbox Code Playgroud)
如果第一个(构建lib的那个)具有global: false,并且第二个具有,则它工作正常global: true.
| 归档时间: |
|
| 查看次数: |
2604 次 |
| 最近记录: |