初めに
Rails7 では、importmap-rails
が標準で利用できるようになりました。
webpacker
やjsbuilding-rails
などと違い、javascript モジュールをブラウザに直接インポートされます。
importmap-rails
は他と違い注意しないといけない点があるので、忘備録として記事にしておきます。
注意点
パッケージの追加の仕方
importmap
は javascript パッケージを追加するためには、以下のようにします。
$ bin/importmap pin [パッケージ名]
Pinning [パッケージ名] to [パッケージURL]
といった形で、パッケージを追加していきます。
importmap
で利用できるのは npm から取得できるパッケージ JavaScript CDN 経由で利用できるものだけです。
JSX は利用できない
webpack
のようにコンパイルなどを行わなず、ブラウザに直接インポートされます。
なので、JSX
のような明示的なトランスパイルやコンパイルのステップが必要である場合はimportmap-rails
では利用できない。
パッケージのアップデート
npm update
などのようにパッケージをまとめてアップデートできませんが、下記のようなコマンドを使うことで新しいバージョンが存在するかを確認できます。
$ ./bin/importmap outdated
新しいバージョンのnpmレジストリをチェックします
$ ./bin/importmap audit
既知のセキュリティ問題についてnpmレジストリをチェックします
パッケージをローカルにインストールする
--download
オブションを指定することで、パッケージをローカルにインストールできます。
bin/importmap pin [パッケージ名] --download
vender/javascript
ディレクトリにインストールされる。