我一直在反对这一点。我正在加载大约60个需要遵守某种依赖结构的脚本文件。通常在requirejs中加载这些不起作用,所以我开始使用订单插件。
订购插件在Firefox 3.6.12,IE7,IE8中运行良好,但我的应用程序在Chrome 8中爆炸.Chrome似乎按任何顺序执行。这是一个已知问题还是有一些解决方法?
答案 0 :(得分:7)
免责声明,我是RequireJS的主要开发人员:
夜间WebKits发生了变化,打破了订单插件。它也会影响LABjs。它导致HTML5规范的实现改变了动态脚本加载行为。好消息是浏览器开始收敛,坏的是规范没有考虑动态添加的脚本元素的有序执行。
LABjs的作者Kyle Simpson已engaging the HTML5 group获得官方规范更改,支持动态添加脚本的订单执行。到目前为止,Firefox nightlies已经实现了一个变化,我相信WebKit也可能正在考虑它。 Another good writeup is by Henri Sivonen
所有这一切,我认为它影响了WebKit的夜魇,我不确定Chrome 8是否已经接受了改变。我希望这可能是破损的原因,但我对订单插件的单元测试似乎对我在Chrome 8中有用。
如果你可以确认你使用的是Chrome 8,而且可能不是可能有Chrome 9的开发人员频道,那就不错了。了解您正在使用的RequireJS版本也很好。 0.15有一个修复程序,对应于Firefox nightlies中的更改。如果您使用的是旧版本的RequireJS,您可以尝试使用较新版本。