私たちの require.js と backbone.js アプリでは、多くのビューとテンプレートを使用しています。
ビルドステップで、適切なビュー シムを使用してテンプレートをインライン化し、その過程でビルドからテキスト プラグインを削除します。
それも可能ですか?
私たちの require.js と backbone.js アプリでは、多くのビューとテンプレートを使用しています。
ビルドステップで、適切なビュー シムを使用してテンプレートをインライン化し、その過程でビルドからテキスト プラグインを削除します。
それも可能ですか?
r.js ユーティリティを実行すると、RrequireJs によって自動的に処理されます。テンプレートを「インライン化」するための追加の作業はありません。
テンプレートが次のように定義されている限り:
define ( ['text!templates/my.html'], function(myTemplate){})
r.js -o app.build.js を実行するtext!templates/my.html
と、最適化された JavaScript ファイル内の独自の文字列にすべてがインライン化されます。これが私のapp.build.jsのサンプルです
({
appDir: "../project-directory",
baseUrl: ".",
dir: "../../optimized",
modules: [
{
name: "js/bootstrap"
}
],
paths: {
text: 'js/libs/amd/plugins/text',
order: 'js/libs/amd/plugins/order',
jquery: 'js/libs/jquery-1.7.1',
underscore: 'js/libs/underscore',
backbone: 'js/libs/backbone',
'jquery.mobile.router': 'js/libs/jquery.mobile.router'
},
optimize: 'uglify',
optimizeCss: "standard"
})
RequireJS は、 で始まる依存関係をインライン化するのに十分スマートtext!
です。つまり、テキスト プラグインは開発バージョンでのみ使用されます。最適化されたバージョンでは、テキスト プラグインは必要ありません。
詳細に興味がある場合は、プロジェクトを最適化するための手順がRequireJS のサイトにあります。ここに記載されているすべての可能なオプションを含むビルドファイルの詳細なサンプルを見つけることもできます