0

私は JavaScript でプロジェクトを構築しています。AMD の規則を尊重したいのですが、プロジェクトをグローバル環境から利用できるようにする必要があります (プロジェクトの名前を追加するだけです)。

Dojo はまさに私が望んでいるものであるため、完璧な例です。有効な AMD ですが、Dojo はグローバル環境から入手できます。ソースを調べてみましたが、どこで Dojo を定義しているのかわかりませんでした。

これまでのところ、私が思いついた唯一の解決策はこれです:

project.js :

var Project = {
    // some stuffs in there
};

module.js :

require(['project'], function () {
    Project.Module = {
        // some stuffs in there
    };
});

私はそれが最善の方法ではないことを知っています.module.jsは{}それを定義するのではなく、返す必要があると信じています。

最善の方法は何ですか?

4

1 に答える 1

1

定義を確認し、利用可能な場合はプロジェクトをモジュールとして定義することをお勧めします。

if ( typeof define === "function"){
  define('project', [], function(){ return project; })
}
于 2012-10-24T10:45:21.720 に答える