初めてオプティマイザーを使用していますが、いくつかの問題や質問があります。
メインファイルを最適化しようとしていますが、予想どおり、jQuery、Backbone、および Require モジュールを配置します (そして、ナビゲーション全体で使用します)。しかし、いくつかのビューで使用する jQuery プラグインがあるとします。build.js ファイルの「include」オプションを使用して、メイン ファイルに追加しようとしました。それはそれを追加します(例: jQuery Slides )が、 define("jquery-slides") を使用したビューがあるため(ここでも例です)、ブラウザーはプラグインのファイルを再度読み込みます。メインのビルドファイルにある場合でも。
これは起こると思いますか?これを修正できますか?
ありがとう。
ここにいくつかのコードがあります。それが役立つことを願っています=)
build.js
{
baseUrl: "javascripts/",
appDir: "..",
dir: "dist",
name: "main-site",
include: ['libs/requirejs/require', jquery-slides'],
insertRequire: ['main-site'],
paths: {
"main-site": 'main-site',
'jquery': 'libs/jquery/jquery',
'jquery-slides': 'libs/jquery/plugins/slides.min.jquery'
}
}
main-site.js
require.config({
baseUrl: "/javascripts/",
paths: {
'jquery': 'libs/jquery/jquery',
'underscore': 'libs/underscore/underscore',
'bootstrap': 'libs/bootstrap/bootstrap.min',
'datepicker': 'libs/bootstrap/plugins/bootstrap-datepicker',
'backbone': 'libs/backbone/backbone.max',
'backbone-paginator': 'libs/backbone/plugins/backbone.paginator',
'backbone-validation': 'libs/backbone/plugins/backbone.validation',
'text': 'libs/requirejs/text',
'templates': '/templates/site',
'views': 'views/site',
'jquery-cookie': 'libs/jquery/plugins/jquery.cookie',
'jquery-raty': 'libs/jquery/plugins/jquery.raty.min',
'jquery-slides': 'libs/jquery/plugins/slides.min.jquery'
},
shim: {
'backbone-paginator': ['backbone'],
'bootstrap': ['jquery'],
'datepicker': ['bootstrap'],
'jquery-cookies': ['jquery'],
'jquery-raty': ['jquery'],
'jquery-slides': ['jquery'],
'backbone-validation': ['backbone']
}
});
require([
'app-site'
], function(App) {
$(function(){
App.initialize();
});
});