5

わかりました、この質問が何度も聞かれていることは承知していますが、答えは私が抱えている問題/質問に決して対処していないようです.

特定のページにのみ含めたい js ファイルがあります。ファイルをフォルダーに入れ、マニフェスト ファイルでそれらのフォルダーのみを参照することを示唆する多くの応答があります。

ただし、アプリケーション レイアウト ファイルは 1 つしかありません (これが不足している領域である可能性があります)。したがって、このファイルは application.js マニフェストを指しているため、条件付きで含める方法がわかりません。

このリソースにも少し似ています - http://railsapps.github.io/rails-javascript-include-external.html -ページ固有のスクリプトのサブ見出しまでスクロールダウンすると、Railscast が示唆する内容が繰り返されます。ただし、複数のアプリケーション レイアウト ファイルについては何も言及されていません。

この状況で何をすべきかを誰かが明確にするのを手伝ってくれるなら、私は最も感謝しています.

Rails 4 を使用していることを指摘しておく必要があります。

4

2 に答える 2

5

ビューで content_for を使用して、ビューがレンダリングされるときにコンテンツをレイアウトに「挿入」できます。参照: using-the-content-for-method

これを実現するには、いくつかのことを行う必要があります。

  1. プレースホルダーを追加して、レイアウトにコンテンツを生成します。元。

    <%= yield :js %>

  2. ビューに (生成される) ブロックを追加します。元:

    <%= content_for :js do %> <%= javascript_include_tag "my_script" %> <% end %>

  3. 本番環境でアセット パイプラインを使用していて、「my_script.js」などの特定のアセットを参照したい場合は、production.rb または関連する環境の config.you を使用してプリコンパイルする必要があります。

    config.assets.precompile=["my_script.js"]

于 2013-09-10T19:13:12.917 に答える