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

刷新页面后为什么router.beforeEach中state的为空?

刷新页面后为什么router.beforeEach中state的为空?

largeQ 2018-09-03 12:11:02
刷新页面后vuex从sessionStorage获取,为什么router.beforeEach中state的为空?vuex:const state = {  state: {     token: sessionStorage.getItem('token') || '',   }, }router:router.beforeEach(function(to, from, next) {   console.log(to.meta.auth,store.state.token,to.path);   if (to.meta.auth && !store.state.token && to.path !== '/login') {     return next({       path: '/login',       query: {redirect: to.fullPath}     })   }   next(); });在用户登陆后刷新页面,为什么beforeEach里store.state.token为空?因为我把store写成了state...QAQ每天都在问傻逼问题
查看完整描述

1 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

const store = { // 这里是 store ?

  state: {

    token: sessionStorage.getItem('token') || '',

  },

}

初始化 store 实例时,如果没登录 token 应该是空的,之后如果登录,sessionStorage 保存到 token 后,state.token 也不会再改变了,因为没有 mutation 去触发重新获取


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

添加回答

举报

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