ryokky59/comitrace

jQueryはerbとassetsと2通りの実装方法があることを理解しよう

Closed this issue · 0 comments

$("#follow_form_"+"<%= @user.id %>").html("<%= j(render 'users/follow_form', { user: @user }) %>")

@ryokky59

[1]ビュー(js.erb)に書く方法と [2]assets/webpack にまとめて書く方法があります。
[1][2]を混ぜるのは良くないです。

[1]はHTML中心でUI改善のためJSを部分的に使う場合には簡便です。

[2]は以下を参考にしてください。
https://railsguides.jp/working_with_javascript_in_rails.html
複雑なjsonを返す必要があるなら jbuilder, jb といったビューとして書けるテンプレートエンジンを使用するのが良いです。

今後、フロントエンドフレームワークの普及が加速します。その場合、[2]の形で独立させておく方が、拡張性が高くなります。