RequireJS无法正确初始化模块

时间:2015-11-04 17:31:08

标签: javascript backbone.js requirejs require

当我访问我的网站时,它经常正常工作。其他时候我从Javascript收到一个错误,导致我相信我所需的对象或函数在使用时没有被requirejs正确初始化。

作为一个例子,这是我的一个模块的顶部:

Top of module

以下是代码中此时Backbone变量的值。

Chrome Debugger Output

请注意,返回带有加载函数的对象。这种行为似乎在各种已定义和必需的模块(不仅仅是Backbone)上任意发生。

我可以确认模块上的define方法被调用(该模块是AMD兼容的。后台是shimmed。)但是没有调用传递给define调用的函数。

我的猜测是,requirejs仍在以某种方式初始化它,但我认为require调用是同步的,只有在模块准备好使用后才会返回。

任何帮助或指导表示赞赏。感谢。

1 个答案:

答案 0 :(得分:-1)

经过大量挖掘后,我能够确定加载方法来自Google Visualization库WebFontLoader的依赖。

有关错误可能原因的详细信息如下: https://github.com/google/google-visualization-issues/issues/2070

为了解决这个问题,我采用了所提供的使用冷冻装载机的建议,但版本为41,而不是43。