Rails 3 アプリで複数の (そして競合する) JavaScript ライブラリを使用する場合の最善のアプローチを理解したいと思います。js の競合が発生する前に、application.html.erb テンプレートを使用して、すべてのページですべての JavaScript ライブラリ テンプレートを次のように定義しました。
<%= javascript_include_tag :all %>
すべての js ファイルを 1 つのファイルにキャッシュするつもりでした。しかし、mootool js ライブラリを使用してページを追加すると、他のいくつかのページが壊れてしまい、js ライブラリを変更しても問題を解決できませんでした。mootool ライブラリを利用するページ用の新しいコントローラーを作成することで解決策を見つけました。次に、他の (mootool 以外の) ページが使用するアプリケーション テンプレートを使用しない、そのコントローラー用のテンプレートを作成しました。
競合するライブラリを扱う場合、(js ライブラリを定義する新しい head セクションを使用して) 新しいコントローラーを作成する必要がありますか、それともより良い解決策があります。
また、すべてのライブラリを 1 つのファイルにキャッシュすることはできなくなりましたか? 私は、競合しない(そしてそれらをキャッシュする)すべてのJavaScriptライブラリでパーシャルを作成し、アプリケーションテンプレートのパーシャルにリンクできると考えています。また、mootools を使用するページでは、そのパーシャルにリンクし、mootool js ライブラリも宣言します。