我有三个独立的库-
问题是,从lib C访问window.myGlobalFunction时,未打印。
在库B中,如果我从src /而不是从已转译的lib /中导入库A的内容,则我的问题会自动得到解决。
不确定为什么会这样。 另外,我通过设置
禁用了babel中的es模块转译{modules: false}
libA的babelrc中。
我有一个问题similar to this one,但是那里发布的解决方案也没有起作用,因为我需要通过直接在Window对象中查找来在另一个库中使用global。
所有库都是单独的npm软件包。
答案 0 :(得分:0)
我发现问题是babel如何从LibA编译代码,尤其是包括async ... await的代码。
它使用预设的env和fb的再生器运行时,使用生成器将async..await转换为Promises。
我禁用了“ transform-regenerator”,“ transform-async-to-generator”插件,并使用fast-async plugin来完成工作,而我的问题已解决。
另一种方法是使用babel的transform runtime plugin来解决我的问题。
我怀疑主要问题是使用regeneratorRuntime的代码没有得到解决,对此不确定,但是解决方法解决了我的问题。