onMounted异步获取数据传给子组件无法获取

业务需求

         这段时间做了一个3D展示人体器官的系统,技术栈是使用vue3+elementPlus+three做的,但是呢,使用Vue3时候发生了些小问题,比如在当你在父组件中发送请求,获取数据,并将数据放在一个响应式对象上时候,你想将该数据同样传递给子组件使用,那么问题就发生了...

         我第一次就是这样用的,简简单单,无懈可击,一运行就一片红,打印一看......

 

 

 

 

         我数据勒???!!!

       我相信大家在项目中是非常频繁使用这种用法的,数据确实赋值上去了,打印userInfo确确实实有对应的数据,但是子组件就是没有,还是赋值前的数据,问题就来了,咋办?

        目前解决方法我是使用Vue3的watch方法监视props内的数据来获取的,如下:

        只需要在子组件内添加一个watch,监视父组件中onMounted中异步请求数据传入的数据即可。这种解决方法是相当于替换掉了子组件的onMounted方法来获取数据,完成:当用户进入页面时候,父子组件能够正确获取数据并渲染,其实子组件也是获取到了,只是onMounted时候还没更新。

        

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值