vue异步数据 报错_解决vuex数据异步造成初始化的时候没值报错问题

在Vue应用中,由于Vuex的数据是异步的,可能导致页面初始化时因数据未加载完而报错。本文提出了三种解决方案:1) 使用`watch`和`mounted`初始化并监听数据;2) 在`computed`属性中赋值并做非空判断;3) 利用拓展运算符确保值存在。这些方法有助于避免因Vuex异步数据问题引发的错误。
摘要由CSDN通过智能技术生成

当使用vue做登录的时候,我们会把拿到的部分用户信息存在vuex+cookie中,我们知道,vuex的数据是会随着浏览器刷新而丢失的,此时我们会重新请求接口对vuex的数据进行再次赋值,如下

当有cookie但是vuex没有数据的时候再次请求赋值

20191113084620.jpg

state

20191113084631.jpg

mutation

20191113084640.jpg

vuex的数据是异步的,当我们页面需要直接拿vuex的值进行渲染的时候,初始化瞬间(即请求过程进行的时候),vuex是没有这个值的,如何解决这个问题,暂时总结了三种方法,希望有遇到的大佬进行补充和查错:

1.通过watch和mouted监听并且初始化vuex数据

在mounted的时候初始化该数据 并且watch该数据(不推荐)

2.在computed赋值该数据 并且在dom渲染的时候做非空的判断

20191113084653.jpg

20191113084703.jpg

或者:

20191113084715.jpg

20191113084724.jpg

3.使用拓展运算符

20191113084734.jpg

以上这篇解决vuex数据异步造成初始化的时候没值报错问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

本文标题: 解决vuex数据异步造成初始化的时候没值报错问题

本文地址: http://www.cppcns.com/wangluo/javascript/286007.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值