当我在IE中使用带有选项async set false的dojo时出现问题,我的应用程序需要在同步模式下使用dojo,请参阅我的代码:
<script>
var dojoConfig = {
async: false,
packages: [{
name: "ControleOO",
location: location.pathname.replace(/\/[^/]*$/, '') + "/ControleOO"
}]
};
</script>
<script src="js/dojo/dojo.js"></script>
<script>
require(["dojo/_base/window", "ControleOO/Base", "ControleOO/Config", "ControleOO/Mouse"], function(win, Base, Config, Mouse){
window.Base = new Base();
window.map = window.Base.getMapa(window.Base);
config = new Config('PROCEMPA'); //TODO Alterar para base desejada
window.mouse = new Mouse();
});
</script>
当我在IE上运行此页面时,require方法不会调用,但在其他浏览器中,该方法调用正常。
这是一个BUG还是我不知道配置DOJO lib的正确方法?
最诚挚的问候,
Renan的
答案 0 :(得分:1)
如果在未包含模块时它工作正常,并且此问题仅存在于IE&lt; 9中,则您可能编写了不符合EcmaScript 3的JavaScript。不合规代码的最常见原因是无意中在某处留下了一个尾随逗号。有关详细信息,请参阅Are trailing commas in arrays and objects part of the spec?。