0

2 つの個別の js ファイルに 2 つの「定義」があります。

def1.js と def2.js

define("mydefname1",["file1",...]});

define("mydefname2",["file2",....]});

2 つの定義がロードされているかどうかを確認する別の require ステートメントがあります。

require(['def1','def2'], function(){alert('loaded')});

これはうまくいきます..

しかし、私が試してみると

require(['mydefname1','mydefname2'], function(){alert('loaded')});, 

それは動作しません。

mydefname1 と mydefname2 を実際に使用できる方法はありますか?つまり、ファイル名ではなく、それらをロードするモジュール名ですか?

4

2 に答える 2

0

私が理解しているように、RequireJS はモジュール名を手動で割り当てることを避けることを推奨しています - ここを参照してください: http://requirejs.org/docs/api.html#modulename

FWIW、「パス」構成オプションで遊んだことがありますか? やりたいことを正確に行うためにそれを使用できるとは思いませんが、許容できる代替アプローチを提供する可能性があります。ここを参照してください: http://requirejs.org/docs/api.html#config

それが役に立てば幸い!

于 2011-05-17T19:32:20.483 に答える
0

私の知る限り、それは不可能です。私が通常行うことは、モジュール名を含むようにファイル名をフォーマットすることです。そのため、そのように含めることができます。

メタクラス名 Overlay の場合、ファイル名は class.Overlay.js になり、require/include 関数はモジュール名を取得して、そこからファイル名を作成します。

于 2011-04-14T21:08:55.830 に答える