从AOL加载Dojo库和从本地加载Widget代码?

时间:2008-11-21 06:21:20

标签: dojo

我刚开始学习Dojo。我按照一个站点Widget示例,使用一些不同的方法来加载Dojo库。我喜欢使用AOL引用加载dojo.js,如下所示:

<script type="text/javascript" 
  src="http://o.aolcdn.com/dojo/1.2.0/dojo/dojo.xd.js">
</script>

并将我的小部件代码保存在本地Web服务器中,如下所示:

scripts/
   myWidget/
     widgetExample.js
   ...
test.html

其中 widgetExample.js 包含我的窗口小部件类代码, test.html 是我的测试页面。我收到的错误消息是:“未捕获的异常:无法加载跨域资源: myWidget.widgetExample ...”。我不确定是否必须在本地加载dojo包?我真的很喜欢将dojo库包分开,或者从AOL加载,只将我自己的代码放在本地路径中。我试图谷歌关于不同的域加载,baseScriptUrl和moduleMapping?仍然无法搞清楚。感谢您提供任何详细说明。

1 个答案:

答案 0 :(得分:3)

这可能有所帮助:http://dojotoolkit.org/forum/dojo-core-dojo-0-9/dojo-core-support/xdomain-usage-dojo-loading-not-detecting-local-modules

摘要是:你需要一个djConfig项来注册你想要的本地modulePaths,并指定一个baseUrl来“欺骗”Dojo,让它认为它知道这些路径在主机之间的相对位置。

djConfig = {modulePaths:{“mine”:“/ js / mine”};

然后你可以从/js/mine/Thing.js中获取dojo.require(“mine.Thing”)

此致 彼得希金斯