0

最近、dojo を使用して他の js ファイルを含めることに問題があります。例: 1.js ファイルに、次のように書きました。

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

私の 1a.js ファイルでは、関数 addButton を書きました:

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){})

手伝ってくれてありがとう!

4

1 に答える 1

1

dojo.requireツールキットのレガシー(<= 1.6)ローダーです。1つのファイルで使用dojo.requireして、すべてのファイルでコードを使用できるようにしました。

Dojoは、モジュールのロードにAMDAPIを使用するようになりました。1a.jsでは、ステートメントも追加する必要がありますrequire

次の質問に対する私の回答は、AMDAPIとrequireステートメントのより良い理解を提供します。

于 2013-03-09T20:22:51.900 に答える