モジュールを使用してプロジェクトのすべてのテンプレートをロードしたいのですが、(a)コードがr.jsで最適化され、(b)意味があるかどうかはわかりません。 -基本的に、define()ブロック内のネストされたrequireがオプティマイザーによって取得されないのではないかと心配しています。理想的には、r.jsを実行した後、可能であればテキストファイルを含め、すべての依存関係を縮小した単一のファイルが必要です。
template_loader.js
define(["jquery","underscore","icanhaz"],function($,_,ich){
var template_names = [
'test'
];
require([
'text!templates/test.tpl',
],function (){
for (var i = arguments.length - 1; i >= 0; i--) {
ich.addTemplate(template_names[i],arguments[i]);
};
});
});
そして、私のメインのapp.jsで:
require(['jquery','underscore','backbone','icanhaz','template_loader'],function($,_,Backbone,ich,loader){
// templates should be available here as ich.template_name()
});
目標は、テンプレートリソースの読み込みを処理する場所を1つ持つことです。これにより、他のモジュールで使用できるようになります。
これはそれを行うための良い方法のように思われますか?そうでない場合、より良い戦略は何ですか?