首页 > 解决方案 > Nuxt.js:未定义窗口

问题描述

我正在使用 Nuxt.js。设置 vuex-persist 时出现以下问题。有人可以帮助我吗?

存储/index.js

图一

商店/LangModule.js

图二

图三

标签: javascriptvue.jsvuexnuxt.jspersistence

解决方案


重要的是要知道 Nuxt 在服务器端和客户端都可以使用,因此您不能window在所有地方都使用它,因为它只存在于客户端。

您可以声明此插件无 SSR 以避免在服务器端运行它。

按照文档

nuxt.config.js

export default {
  plugins: [
    { src: '~/plugins/vuex-persist', ssr: false }
  ]
}

~/plugins/vuex-persist.js

import VuexPersistence from 'vuex-persist'
 
export default ({ store }) => {
  new VuexPersistence({
  /* your options */
  }).plugin(store);
}

推荐阅读