Javascript Dojo没有';看不到自定义小部件
我在Javascript Dojo没有';看不到自定义小部件,javascript,django,dojo,Javascript,Django,Dojo,我在foo/bar.js中有一个自定义小部件,声明如下: define([ ... ], function( ... ) { return { ... } ); require([ "foo/bar" ... ], function(bar, .. .. 我正在尝试在其他小部件中使用它,如下所示: define([ ... ], function( ... ) { return { ... } ); require([ "foo/
foo/bar.js
中有一个自定义小部件,声明如下:
define([
...
], function(
...
) {
return {
...
}
);
require([
"foo/bar"
...
], function(bar, ..
..
我正在尝试在其他小部件中使用它,如下所示:
define([
...
], function(
...
) {
return {
...
}
);
require([
"foo/bar"
...
], function(bar, ..
..
但它不会被加载。有人有什么建议吗
当我在控制台中键入foo/bar
时,它返回空对象object{}
。当我使用旧格式和dojo.provide()
时,一切都很好。但是一旦它掉了下来,维吉特就变得看不见了
重要提示:只有在我尝试使用Google托管的Dojo时才会出现问题:
<!--
<script src="{{ STATIC_URL }}js/dojo/dojo.js" type="text/javascript"></script>
!-->
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.8.6/dojo/dojo.js"></script>
我必须使用谷歌托管的Dojo进行调试,因为静态URL加载需要30-40秒(因为它是未编译的)。首先阅读Dojo现在使用的AMD模块加载: AMD的工作方式是将所需模块作为函数参数返回。您可以在require调用的函数中使用该模块 假设您已经定义了foo/bar模块。您可以在以下情况下使用它:
require(["foo/bar"], function (anyVarName) { // <- anyVarName will be your foo/bar return value
console.dir(anyVarName);
}
这样更好吗?这是正确的。但是我已经在用这个了,我在问题中没有提到这个。