nuxtjs框架使用nuxt generate命令生成静态站点,刷新页面无法获取cookie,从而更新Vuex
在使用nuxt generate
命令生成静态站点时,由于它是在静态环境下运行的,因此是无法访问服务器的req
对象的,因此在nuxtServerInit
方法中不能通过req.headers.Cookie
获取到请求头中的Cookie值。
nuxtServerInit
方法只会在服务端运行一次,在第一次加载应用程序时会被调用,它主要用于初始化数据,例如将用户信息存储到 Vuex store 中。在静态环境下,由于无法获取请求头中的信息,因此无法在nuxtServerInit
方法中获取到请求头中的Cookie值
所以在store的nuxtServerInit也无法使用插件 cookie-universal-nuxt 来获取cookie
但是可以在页面加载时获取cookie,所以可以这样操作:
在layout页面的created方法中 获取cookie,更新到vuex中