小ネタ。Vagrantでconfig.vm.synced_folder
を使ってWindowsとのフォルダ同期をし、そこにNuxt.jsをインストールしたものの、SSHでnpm run devしながらpages配下のファイルとかいろいろいじってもホットリロードがされなかったのでどうにかしました。
Vagrant、どうやらWindows環境だとシンボリックリンク系の権限の問題でうまくnpm initが走らなかったりして1、結局NuxtのインストールもいったんVagrantからじゃなくてWindowsのPowershellからpackage.json
直書き、npm install
を叩くとかいうゴリ押しをしたので、その辺が原因な気がします。
TL;DR
nuxt.config.js
に以下の記述を追加するだけ。
export default {
watchers: {
webpack: {
poll: true,
}
}
}
詳細
いろいろ調べてる中で、
【Vue.js】Vue CLI 3のホットリロードをWindows+Vagrant環境で動かす | kawadeblog https://kawadev.net/vue-cli3-hmr/
↑
こんな記述を見つけてホットリロードがwebpackのwatcherを使って動いてることに気付いたので、nuxt.config.js
に明示してあげればいいと考えて実際に書いてみたらうまく動きました。
実際の書き方については
watchers プロパティ - NuxtJS https://ja.nuxtjs.org/docs/2.x/configuration-glossary/configuration-watchers
↑
ここを参照しました。もしうまく動かなかったらリファレンス通り、poll: 1000
とかで設定してもいいかも。
まとめ
Windowsはもう少しデベロッパーに優しくなってください。
-
https://tokibito.hatenablog.com/entry/2018/02/28/012014 ←こういうのが原因らしい。いろいろ対策しても結局直らなかったけど…… ↩