絶対的な答えはありません
cssとjsの管理はRailsにとって永遠の課題であり
バージョンによって、推奨がコロコロ変わります。
Rails5.1で最終的な決着を見せそうでしたが。
まだ変更の余地があり、変わることもありえます(公式)。
Rails3.1からsprocketsというgemが導入されており
これの設定ファイルでjsやcssの呼び出しを管理しています。
が、Rails5からこの設定ファイルが変更になったりならなかったり
(する予定だったがgemの対応が間に合わなかった)
して色々カオスなことになっています。
ここまでが前提
で、とりあえず、読み込みの流れ。
#assets-pipeline編
0. sprocketsが、指定されたフォルダを読み込む(デフォルトはlibに含まれているgemのcss.jsとassets以下)
0. application.js/.cssがフォルダから各ファイルを指定して読み込む 注 //= require_tree .は全て読み込む指定
0. assets-pipelineで必要なものはコンパイルするなどして、まとめて public assetsに出力
0. javascript_include_tag等でhtml.erbに
#webpacker編
0. yarn addを使って必要なライブラリをnode_modulesにインストール
0. app/javascript/packs 以下のjsでそれらを呼び出し,構造はフォルダを作るなどしてページごと?に管理(これも正解はない模様)
0. bin/webpacke(assets-pipelineでも自動実行される)で必要なものはコンパイルするなどして、まとめて public packsに出力
0. javascript_pack_tag等でhtml.erbに
さえ押さえておけば、置く場所はわかりやすさ重視で、割とどこでもよく
assets-pipelineとwebpackerで管理するのがRails流だと思います。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/07/03 06:39
2017/07/03 07:23 編集