我正在使用Nuxt.js进行SSR。每当我登录我的应用程序时,我都有一个登录系统,我得到一个JSON Web令牌(JWT)并将其存储在我的Localstorage中。
现在的问题是SSR。每当我尝试访问Localstorage时,它都说未定义。我找到了有关此问题的Stackoverflow文章,这是因为代码是服务器端呈现的,因此无法访问Localstorage。
我尝试了created()
生命周期挂钩来检查令牌是否存在于本地存储中,但没有成功。
我也尝试过nuxtServerInit
也没有成功。
我该如何检查令牌是否存在于客户端的本地存储中?还是有更好的主意?
答案 0 :(得分:2)
您可以在mounted
上调用函数
export default {
mounted() {
this.storage();
},
methods:{
storage(){
localStorage.getItem("authToken");
}
}
}
或使用created
和process.browser
支票
export default {
created() {
this.storage();
},
methods:{
storage(){
if (process.browser){
localStorage.getItem("authToken");
}
}
}
}