29
Rails 3.1を使用して、「ページ固有」のJavaScriptコードをどこに配置しますか?
私の理解では、JavaScriptはすべて1つのファイルにマージされます。Railsは//= require_tree .、application.jsマニフェストファイルの最後に追加すると、デフォルトでこれを行います。 これは本当の命の恩人のように聞こえますが、ページ固有のJavaScriptコードについて少し心配しています。このコードはすべてのページで実行されますか?最後に必要なのは、すべてのオブジェクトが1ページでのみ必要なときに、すべてのオブジェクトをインスタンス化することです。 また、コードが衝突する可能性もありませんか? あるいはscript、ページのJavaScriptコードを実行するメソッドを呼び出すだけの小さなタグをページの下部に配置しますか? その後、require.jsは必要なくなりましたか? ありがとう 編集:私はすべての答えに感謝しています...そして私は彼らが本当に問題になっているとは思いません。それらのいくつかはスタイリングに関するものであり、関連しているようには見えません...そして他の人はjavascript_include_tag私が存在することを知っていると述べています...各ページの下部で個々のJavaScriptをロードするのではなく、JavaScriptを1つのファイルに読み込みます。 私が思いつくことができる最善の解決策は、特定の機能divをidsまたはclasses でタグにラップすることです。JavaScriptコードでは、idまたはclassがページ上にあるかどうかを確認し、ページ上にある場合は、それに関連付けられているJavaScriptコードを実行します。このように、動的要素がページ上にない場合、JavaScriptコードはapplication.js、Sprocketsによってパッケージ化された巨大なファイルに含まれていても実行されません。 私の上記のソリューションには、100ページのうち8ページに検索ボックスが含まれている場合、その8ページのみで実行されるという利点があります。また、サイトの8ページに同じコードを含める必要はありません。実際、サイトに手動のスクリプトタグを含める必要はもう二度とありません。 これが私の質問に対する実際の答えだと思います。