首次登录后Vue组件无法获取Store数据的解决方法:为什么方法中访问userInfo.username为undefined?

首次登录后vue组件无法获取store数据的解决方法:为什么方法中访问userinfo.username为undefined?

vue 首次登录获取不到 store 数据的原因及解决方法

在首次登录后,您在 vue 组件中通过 userinfo 访问 store 中的状态,在页面上可以获取到,但在方法中却输出 undefined。这可能是由于 store 中获取的 username 没有正确保存到 localstorage 中导致的。

根据给出的 store 代码,getuserinfo 方法在获取用户信息后会将 username 作为字符串保存到 localstorage 中,代码如下:

if (code === 0) {
  localstorage.setitem('userinfo', data.username)
  commit('set_userinfo', data)
} else {

将上面代码修改如下:

if (code === 0) {
  localStorage.setItem('userInfo', data)
  commit('SET_USERINFO', data)
} else {

修改后,username 会连同其他用户信息一起保存到 localstorage 中。这样,当您在方法中通过 this.userinfo.username 访问 username 时,就能正常获取到值。

以上就是首次登录后Vue组件无法获取Store数据的解决方法:为什么方法中访问userInfo.username为undefined?的详细内容,更多请关注其它相关文章!