私の /public /javaScriptsディレクトリのJavaScriptファイルに埋め込みRubyを実行する方法はありますか?

StackOverflow https://stackoverflow.com/questions/2726421

質問

私は、増え続ける量の関連するJavaScriptを持つフォームを持っています。現在、このJavaScriptは私のフォームビューにありますが、それは問題ありませんが、それは大きくなり、フォームを圧倒し始めています。

これを /public /javaScriptsディレクトリに別のファイルに入れたいのですが、JavaScriptの多くは埋め込まれたRubyによって生成されます。この埋め込まれたルビーは無視され、コードをここに配置するとブラウザに渡されます。

この埋め込まれたルビーを実行し、JavaScriptが私の見解にあるのと同じように生成される最良の方法は何ですか(もしあれば)?

役に立ちましたか?

解決

JavaScript用の動的ERBテンプレートを作成できますが、それらは公開/JavaScriptsディレクトリには行きません。

JavaScriptを部分的に移動することをお勧めします。 _form_js.html.erbという名前のファイルを作成し、スクリプトタグのコンテンツをそこに置きます。次に、<%= render:partial => 'form_js'%>あなたのビューから。

サイドノートとして、各要素にカスタムJavaScriptを使用するよりも、クラス/IDでフォームの要素を識別し、これに反応する完全に静的なJavaScriptを使用する方が良いでしょう。

他のヒント

RJSテンプレートを作成し、JavaScriptコードをRJSファイルにグループ化できます。参照: http://www.codyfauser.com/2005/11/20/rails-rjs-templates

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top