Nuxt.js:未定义窗口

Posted

技术标签:

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

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

存储/index.js

存储/LangModule.js

【问题讨论】:

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

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

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

关注documentation:

nuxt.config.js

export default 
  plugins: [
     src: '~/plugins/vuex-persist', s-s-r: false 
  ]

~/plugins/vuex-persist.js

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

【讨论】:

以上是关于Nuxt.js:未定义窗口的主要内容,如果未能解决你的问题,请参考以下文章