登录
首页 >  文章 >  前端

Vue 首次登录后为何获取不到 Store 值?

时间:2024-10-29 15:52:01 467浏览 收藏

积累知识,胜过积蓄金银!毕竟在文章开发的过程中,会遇到各种各样的问题,往往都是一些细节知识点还没有掌握好而导致的,因此基础知识点的积累是很重要的。下面本文《Vue 首次登录后为何获取不到 Store 值?》,就带大家讲解一下知识点,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

Vue 首次登录后为何获取不到 Store 值?

vue 首次登陆成功进入页面后为何获取不到 store 值?

在 vue 应用中使用 store 时,偶尔会遇到首次进入页面获取不到 store 值的情况。本文将分析一个常见的原因并提供解决方案。

问题背景

在给定的代码中,开发者使用 mapstate 函数将 store 中的 userinfo 状态映射到计算属性中。在页面上,userinfo.username 能够正常获取到。然而,在方法 gettoptendata 中调用 this.userinfo.username 时,却返回 undefined。

解决方案

问题出在 store 中获取的 userinfo 仅包含 username 这一部分,而其他组件需要获取的是完整的 userinfo 对象。在 store 的 getuserinfo action 中,保存到 localstorage 的应该是整个 userinfo 对象,而不是仅 username:

if (code === 0) {
    localStorage.setItem('userInfo', data) // 改为存储整个 userInfo 对象
    commit('SET_USERINFO', data)
} else {
    // ...
}

通过修改 store 中的代码,可以在首次进入页面时正确获取 store 中的完整 userinfo 值。

好了,本文到此结束,带大家了解了《Vue 首次登录后为何获取不到 Store 值?》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多文章知识!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>