web-dev-qa-db-ja.com

アセットパイプラインのデフォルトのrequire_treeの背後にある理由は何ですか?

Rails 3.1でアセットパイプラインを使用すると、デフォルトのapplication.jsが作成されます:

//= require jquery
//= require jquery_ujs
//= require_tree .

しかし、いつすべてのJavaScriptを含める必要がありますか?ほとんどの場合、コントローラー/ビューごとに異なるJavaScriptを使用しますか?

24
Lai Yu-Hsuan

require_tree .は、フォルダー内にあるすべてのスクリプトを保持する単一のファイル(この場合はapplication.js)を持つことになります。また、ブラウザがそのファイルをWebサーバーから1回だけプルするという事実(Ctrl + Rの更新を行うか、ファイルキャッシュプロパティに変更がない限り)により、アプリは後続のリクエストに対してより高速に動作します。

もちろん、非常に多様で巨大なスクリプトを備えたアプリケーションがあり、一般的なユーザーがそれらの大部分を必要としないほど移動することは期待されていない場合を除きます。これは明らかにあまり一般的ではありません。

追加および詳細情報については。ここを見てください http://guides.rubyonrails.org/asset_pipeline.html

20
thanikkal

ブラウザの読み込みapplication.js一度、キャッシュから取得します。

2
antonversal

// = require_tree。 javascriptディレクトリ内のすべてのファイルまたはサブフォルダファイルをロードします

0
shashi verma