Rails 7 jsbuilding-rails

Rails 7 で導入された jsbuilding-rails についてまとめる。

jsbuilding-rails とは

JavaScript Building ツール。Rails 7 から導入された importmap-rails の代替手段として用意されている。bundle は webpack, rollup, esbuild が選択可能。ちなみに esbuild がおすすめらしい。

導入

Rails 7 以降では rails new 時に -j [esbuild|rollup|webpack] を指定することで導入できる。

後から導入する場合は

$ ./bin/bundle add jsbundling-rails $ ./bin/rails javascript:install:[esbuild|rollup|webpack]

開発環境などで都度ビルドしたいときは

$ yarn build --watch

を実行。これらを一気にやってくれるForemanも用意される。

web: bin/rails server -p 3000 js: yarn build --watch
Procfile.dev

以下で実行可能。

$ ./bin/dev

以降の開発では ./bin/dev で development 環境のサーバーを立てて開発することになる。

※ Foreman により出力されるため入力が受け付けられず、pry-binding などは動作しなくなるので注意。

参考