私はrequirejsの依存関係について私の頭を包んでいます。RequireJSの依存関係について混乱しています
- すでに
shim
を使用してファイルの依存関係を宣言している場合は、そのファイルでモジュールを定義するときに再宣言する必要がありますか? require
を使用してバックボーンなどの依存関係をロードする場合、require
の一部としてロードされたモジュールを定義するときに再宣言する必要がありますか?
ここに私のコードは、これまでのところです:
require.config({
//alias
paths: {
Backbone: 'libs/backbone-min',
Config: 'config',
Dom: 'dom',
App: 'app'
},
//dependencies
shim: {
'Backbone': ['libs/underscore-min'],
'Dom': ['libs/sizzle']
}
});
//used to load and use stuff
require(['Config','Dom','App','Backbone'], function(){
});
のでdom.js
に、私はちょうどdefine(function(){...});
を使用してモジュールを定義し、シズルを使用して起動することができますか?それとも私はまだ私がapp.jsでモジュールを定義する場合、私はすでにrequire()
の一部として含まので、また、私はまだ、define
にバックボーンをロードする必要があります。このdefine(['libs/sizzle'], function(){...});
のように、それを定義する必要があります。
を書くことができそう基本的には) 'Shim'は、単に特定の順序でファイルをロードし、'(必要 'ファイルをロードしてみませんかモジュールとやりとりしない –
Shimが実際に行うことの最も良い答えは、RequireJSの作成者James Burkeです。次のURLでそのメッセージを読むことができます:https://groups.google.com/d/msg/requirejs/-han0L_Sv_E/iFttMxDkT1UJ – svlada