🚗

Railsの"data-turbo-track": "reload"とはなにか

2024/06/26に公開

Railsのapp/views/layouts/application.html.erbファイルには以下のような記述がある。

<%= stylesheet_link_tag "application", "data-turbo-track": "reload" %>
<%= javascript_include_tag "application", "data-turbo-track": "reload", type: "module" %>

Turbo Driveを使っているとき、"data-turbo-track": "reload"をつけることで、アセットに変更があったときにページ全体をリロードするようになる。

ほとんどの場合、Turbo DriveはHTMLのbodyしか変換せず、<head>に変更は加えない。

しかしCSSやJSに変更点があったとき、そのまま変更されないとユーザーに影響がある。
そんなとき、"data-turbo-track": "reload"があることでアセットに変更があったときにページ全体をリロードするようになる。結果的にユーザーが最新のデザインや挙動などを享受できる。

Discussion