tapitapi’s blog

1日1杯タピオカ!エンジニア

【Nuxt.js】window undefined

Nuxt.jsでwindowオブジェクトやdocumentオブジェクトを使用した時、

(window.alert('hello,world');など)

window undefined エラーが出たので対処法を紹介します

 

 

公式リファレンス

ja.nuxtjs.org

 

下記のように、if (process.client) で囲めばOK

if (process.client) {

window.alert('hello,world');

};

 

下記のように、メソッド内にwindowオブジェクトがある場合は、メソッド自体をif (process.client) で囲んでもOK

created: function () {
 if (process.client) {
  this.method1();
 };
},

methods: {
 method1() {

  window.alert('hello,world');

 },

 method2(){

  # 何かしらの処理

 }

};

 

 以上ですーーー!!

 

<no-ssr>で囲むといいよ!という記事も見つけたので、参考に記載しておきます。(試していないのですが、こちらの方がわかりやすい?かな?)

crieit.net

 

Nuxtはサーバーサイドも考えないといけないので、vue.jsのコードをそのままコピペでエラーが起こることがあるんだなー、と勉強になりました

 

おやすみなさいぃぃ