Vue 首次登录成功后,为什么在方法中无法获取 Store 值?

vue 首次登录成功后,为什么在方法中无法获取 store 值?

vue 在首次登录成功后,在方法中获取不到 store 值

vue 项目中,有时会出现首次登录成功进入页面后,在 store 中映射的状态值在页面上可以获取,但在方法中调用时却显示 undefined 的情况。

这个问题可能是由以下原因造成的:

store 中保存的数据格式不正确

在给定的代码中,store 中将获取的用户数据 username 以字符串的形式存储在 localstorage 中,而 userinfo 被期望为一个对象。

修改后的代码:

axios({
  // ...
}).then(res => {
  const {
    data,
    code,
    msg
  } = res.data
  if (code === 0) {
    localStorage.setItem('userInfo', data)
    commit('SET_USERINFO', data)
  } else {
    // ...
  }
}, res => {
  // ...
})

通过修改 localstorage 中存储的数据格式为对象,可以在方法中正确获取 userinfo。

以上就是Vue 首次登录成功后,为什么在方法中无法获取 Store 值?的详细内容,更多请关注其它相关文章!