Nuxt.jsで[nuxt] [request error] [unhandled] [500] localStorage is not defined

今回はNuxt.jsを使っているときに下記のようなエラーが起きたときの原因と対処法についてご紹介していこうと思います。

Nuxt.jsのバージョンは3.11.2です。



Nuxt.jsで[nuxt] [request error] [unhandled] [500] localStorage is not defined

結論から言うと表題のこのエラーはサーバーサイドレンダリング(SSR)環境ではlocalStorageが使えないため起こります。

SPAなら問題なく動きますが、SSR環境ではlocalStorageが使えないためこのエラーが起こるそうです。

process.clientを使って今動いている状態がSPAかSSRかどうかによって条件分岐で処理を変えることもできますが、nuxt.config.tsでssr: falseとすればSPAで実行することになり、localStorageが使えます。

ひとまず、localStorageはSSRでは使えないということを覚えておきましょう。

終わりに

今回はNuxt.jsを使っているときに表題のようなエラーが起きたときの原因と対処法についてご紹介いたしました。

最後までお読みいただきありがとうございます。
よろしければブログやTwitterでのシェアをお願いしております。
コメントもお待ちしております。
誤植や勘違いなどございましたらコメント欄にて教えていただけると幸いです。

直接契約ができるフリーランスエージェント「エンハンス」を立ち上げました。
詳しくは下記LPをご参照ください。
https://enhance.decryption.co.jp/

Youtubeチャンネル開設いたしました。
チャンネル登録者1000人を目指しているので、良いと思った方はチャンネル登録をお願いしたいです。
https://www.youtube.com/channel/UC219XhmSRxmXltTy6COxSMw






Nuxt.js

Posted by ちこ