1

Rails 3.2.1 を使用していますが、コントローラーとアクション固有の Javascript をいくつか含める必要があります。私は を使用して_javascript_template_manager.html.hamlおり、ページの下部でこれを呼び出しています。ここで、これらすべての js を 1 つに結合して、http 要求を減らしたいと考えています。アセット パイプラインを使用しています。

コントローラー固有の js を 1 つのプリコンパイル済みファイルに結合するにはどうすればよいですか?

ここに私の_javascript_template_manager.html.haml ファイルがどのように見えるかがあります

 %noscript
  :css
    #container{ display:none; }
  = render :partial => "/widgets/common/javascript_disabled"


= jquery_include_tag :google 
= javascript_include_tag "common"

/ condetional javascripts for the app
- if params[:controller] == "settings"
  = javascript_include_tag "plugins/jQuery-cookie"

- if params[:controller] != "people" and params[:controller] != "companies"
  = javascript_include_tag "plugins/iphone-style-checkboxes"

- if params[:controller] == 'users' || params[:controller] == 'companies'
  = javascript_include_tag "plugins/best_in_place"

- if params[:controller] == 'letters' || params[:controller] == 'companies'
  = javascript_include_tag "plugins/jquery.autoSuggest"

- if params[:controller] == 'people' || params[:controller] == 'letters' || params[:controller] == 'users' || params[:controller] == 'companies'
  = javascript_include_tag "plugins/areacomplete"

= javascript_include_tag "application"

上記のすべての JavaScript ファイルを 1 つに結合したいのですが、それを行う最善の方法は何ですか?

4

1 に答える 1

0

まず、コントローラ固有のアセットについて読んでください。次に、コントローラー固有の JS ファイルで必要なすべてのファイルを要求する必要があります。たとえば、次のapp/assets/javascripts/settings.jsように追加します。

//= require plugins/jQuery-cookie

これをすべて設定した後は、アセット パイプラインがすべてを 1 つの JS ファイルに自動的に圧縮するため、リクエストが多すぎることを心配する必要はありません。

于 2013-07-30T13:51:06.027 に答える