为了账号安全,请及时绑定邮箱和手机立即绑定

使用vuex保存用户登录状态时遇到的一个问题

使用vuex保存用户登录状态时遇到的一个问题

慕莱坞森 2018-09-03 13:34:38
问题:我做的是一个商城项目,说来话长,由于种种原因,用户登录态得靠我前端来保存,日了狗啊。现在的做法是:在入口文件(main.js)发起一个请求,根据返回的结果判断用户是否合法,合法的话就在设置store.state.userStatus:true,否则为false,然后后续的组件都根据store.state.userStatus做出判断。一切都挺顺利的,直到刷新浏览器,由于接口是xhr请求,异步,所以如果我在个人中心组件刷新浏览器,得到的是store.state.userStatus的初始值,并不是根据接口判断后设置的值,这就有问题了。。。我怀疑能不能用vuex保存用户的登录态,如果能,应该怎么操作呢?如果不能,那前端怎么保存用户登录态才比较妥善呢?
查看完整描述

2 回答

?
慕的地10843

TA贡献1785条经验 获得超8个赞

你的登录状态是基于token还是基于cookie的?
基于token就在拿到token之后保存到localStorage里面或者cookies里面,下次用的时候,有token,并且没过期就是已经登录了,没有token就是没登录

查看完整回答
反对 回复 2018-09-09
?
慕容708150

TA贡献1831条经验 获得超4个赞

你可以在根实例的created回调中发起异步请求,获取到状态之前显示loading,获取到状态后再根据结果显示业务组件或者路由跳转

查看完整回答
反对 回复 2018-09-09
  • 2 回答
  • 0 关注
  • 1242 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信