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

vuex 在页面刷新后state里面的数据为空

vuex 在页面刷新后state里面的数据为空

紫衣仙女 2019-02-20 22:19:14
场景: 用 vue + vue-router + vuex 写的页面,在安卓的qq浏览器上用的时候不小心下拉了,发现浏览器自动刷新,这时候state里面的内容就为空了。问题:vuex 在页面刷新后获取到的state里面的数据为空, 网上的方案是把数据放到Storage里面,那么为什么不直接把数据存到Storage里面,而要经过vuex么?这样做是不是多此一举,感觉vuex没有意义了。
查看完整描述

2 回答

?
慕码人2483693

TA贡献1860条经验 获得超9个赞

你可以这样理解。 vuex是一个集中的数据仓库,任何数据都可以存放在里面。然后你可以通过从vuex中拿到数据然后渲染在视图上。但是页面刷新之后vuex中的数据肯定是被初始化了。就相当于我们刷新页面页面的js文件css文件等都会重新加载一样。但是页面刷新所有的请求应该都会重新请求的。所以我觉得估计是你的vuex使用的有问题。
通常来说,vuex里面的数据是通过mutations进行更新的(这个更新必须是同步的),如果是异步的请求请使用actions来提交commit,然后更新state中的数据

查看完整回答
反对 回复 2019-02-24
?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

vuex作为组件之间传递信息使用 一般中小型的项目不用vuex 你要想保存住 要么你存到缓存中 要么你存到数据库 而不是把vuex当做仓库 他只是状态管理


查看完整回答
反对 回复 2019-02-24
  • 2 回答
  • 0 关注
  • 2373 浏览
慕课专栏
更多

添加回答

举报

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