Next.jsでwebpack5使うとHotReloadが動かなかった件

Title

Next.jsでwebpack5使うとHotReloadが動かなかった件

Date

2021-10-02

なぜか僕の環境だとNext.jswebpack5を使うと HotReload がうまく動作しませんでした。

そのため、webpack5:falseにしてwebpack4で build していたのですが、解消方法がようやく分かりました。

以下が参考になりました。

https://github.com/vercel/next.js/issues/22317#issuecomment-863752692

手順

.envファイルをプロジェクトのルートに配置します。(.env.localでも OK)

以下の記述を追加します。

WATCHPACK_POLLING=true

これだけで OK です。

npm run devすれば、Hot Reload が上手く動作していると思います!

next のバージョンが問題?かもしれないので、一応以下のバージョンで動作確認しています。

"next": "^11.0.1"

build 時間

webpack5で動作させること build すると build 時間が大きく変わりました。

私の環境だと、

  • webpack4 → 58s
  • webpack5 → 20s

となり、大体 1/3 ぐらいの時間で build できるようになりました。

まとめ

build の時間的にもwebpack5は、かなり優れているなと思います。

同じように HotReload が動作しない方はお試しください!

Hot ReloadからFast Refreshに名前変わってるみたいですね・・・

制作パートナー(外注)をお探しの制作会社様・広告代理店様

お気軽にお問い合わせください。