【问题标题】:Nuxt.js: window is not definedNuxt.js:未定义窗口
【发布时间】:2021-01-15 07:39:04
【问题描述】:

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

存储/index.js

存储/LangModule.js

【问题讨论】:

  • 你不能在存储文件上调用window。您必须将其作为插件导入并在客户端而不是服务器端调用它,请阅读文档。已经提到了npmjs.com/package/vuex-persist

标签: javascript vue.js vuex nuxt.js persistence


【解决方案1】:

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

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

关注documentation

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);
}

【讨论】:

    猜你喜欢
    • 2019-07-25
    • 2022-11-11
    • 2020-04-26
    • 2020-08-15
    • 2017-10-01
    • 2021-10-06
    • 2019-06-03
    • 2019-10-12
    • 2013-08-07
    相关资源
    最近更新 更多