[解決済み] Rails 3.1 を使用して、「ページ固有」の JavaScript コードをどこに置くか?
質問
私の理解では、あなたのすべてのJavaScriptは1つのファイルにマージされます。Railsはデフォルトでこれを行います。
//= require_tree .
の下にある
application.js
マニフェストファイルを作成します。
これは本当に救われるような気がしますが、ページ固有のJavaScriptコードについて少し心配があります。このコードは、すべてのページで実行されるのでしょうか?私が一番避けたいのは、1ページしか必要ないのに、すべてのオブジェクトがすべてのページでインスタンス化されることです。
また、コードが衝突する可能性もあるのではないでしょうか?
それとも小さく
script
タグは、そのページの javascript コードを実行するメソッドを呼び出すだけなのでしょうか?
では、require.jsはもう必要ないのでしょうか?
ありがとうございます。
EDIT
: すべての回答に感謝します...そして、それらが本当に問題を解決しているとは思えません。あるものはスタイリングに関するもので、関連性がないように見えますし、他のものは単に
javascript_include_tag
...の存在は知っていますが (当たり前ですが...)、今後の Rails 3.1 の方法は、各ページの一番下で個々の JavaScript を読み込むのではなく、すべての JavaScript を 1 つのファイルにまとめることであるように思われます。
私が思いつく最善の解決策は、特定の機能を
div
タグに
id
または
class
を使用します。JavaScriptのコードでは、単に
id
または
class
がページ上にあれば、それに関連するJavaScriptのコードを実行します。この方法では、動的要素がページ上にない場合、JavaScriptコードは実行されません - たとえそれが大量の
application.js
ファイルを作成します。
私の上記の解決策は、100ページのうち8ページに検索ボックスが含まれている場合、その8ページのみで実行されるという利点があります。また、サイト内の8つのページに同じコードを記述する必要もありません。実際、手動でスクリプトタグを入れる必要はもう二度とないでしょう。
これが私の質問に対する実際の答えだと思います。
どのように解決するのですか?
すべての回答に感謝します...そして、それらが本当に問題を解決しているとは思えません。いくつかの回答はスタイリングに関するもので、関連性がないように思えます...また、他の回答は単に
javascript_include_tag
...これは存在することは知っていますが (当然ですが...)、今後の Rails 3.1 の方法は、各ページの一番下で個々の Javascript を読み込むのではなく、すべての Javascript を 1 つのファイルにラップすることであるように思えます。
私が思いつく最善の解決策は、特定の機能を
div
タグに
id
または
class
esです。javascriptのコードで。そうすると
id
または
class
がページ上にあれば、それに関連するjavascriptのコードを実行します。この方法では、動的要素がページ上にない場合、javascriptのコードは実行されません - たとえそれが大量の
application.js
ファイルを作成します。
私の上記の解決策は、100ページのうち8ページに検索ボックスが含まれている場合、その8ページのみで実行されるという利点があります。また、サイト内の8つのページに同じコードを記述する必要もありません。実際、手動でスクリプトタグを挿入する必要はもう二度とないでしょう。
これが私の質問に対する実際の答えだと思います。
関連
-
vueはopenlayersを使用してスカイマップとガオードマップをロードする
-
vueにおけるv-forループオブジェクトのプロパティ
-
[解決済み】ExpressJS : res.redirect()が期待通りに動かない?
-
[解決済み】エラー。Ionic使用中にモジュール '../lib/utils/unsupported.js' が見つかりませんでした。
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] JavaScriptでページの一番上までスクロールする?
-
[解決済み] CSSは常にJavascriptより優先されるべきか?
-
[解決済み] Javascript / Chrome - webkitインスペクタからオブジェクトをコードとしてコピーする方法
-
[解決済み】Rails 4:ターボリンクで$(document).ready()を使用する方法
-
[解決済み] Rails 3アプリでページ固有のJavaScriptを追加する最良の方法とは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
WeChatアプレット用ユニアプリによるグローバルシェアリング
-
vueの補間表現とv-textディレクティブの違いについて
-
vueにおけるv-forループオブジェクトのプロパティ
-
[解決済み】Node Version Manager のインストール - nvm コマンドが見つかりません。
-
[解決済み] 配列の結合時に未定義のプロパティ 'push' を読み込むことができない
-
[解決済み】GETできない / Nodejsエラー
-
[解決済み】React Nativeアプリをターミナルから実行するとエラーが発生する(iOS)
-
Uncaught TypeError: null のプロパティ 'offsetHeight' を読み取れませんでした。
-
JavaScriptのgetElementById、getElementsByTagNam、getElementsByClassNameの違いと使い方
-
[解決済み] Rails 3アプリでページ固有のJavaScriptを追加する最良の方法とは?