2013-03-09 77 views
0

最近我有一个使用dojo包含其他js文件的问题。例如: 在我1.js文件中,我写道:dojo需要不同的js文件

require(["dijit/form/Button"], function(Button){ 
addButton(someWidget);}); 

,在我1a.js文件,我写的函数Add按钮:

function addButton(target){ 
    var b1=new Button({ 
     style: "border: 1px solid green", 
     label: "xxxxx" 
    }); 
    target.addChild(b1); 
    return b1; 
} 

为1a.js必须有一个错误,因为我不需要那个模块,但是我加了require,最大的问题是那个返回值 ,我不能得到返回值,因为嵌套的函数。

我怎么能写一个js文件,我写我的所有功能,并在另一个js文件,只需要调用这些函数与dojo require("xxxx", function(x){})

感谢您的帮助!

回答

1

dojo.require是该工具包的旧版(< = 1.6)加载器。在一个文件中使用dojo.require,使代码可用于所有文件。

Dojo已经开始使用AMD API来加载模块。在1a.js中,您还需要添加require声明。

我对下列问题的答案将提供一个更好地了解AMD API和require声明: