宏任务和微任务的应用

宏任务和微任务我一直以为只存在于面试题中,今天终于让我逮到一个,且看~

APICloud AVM 3.0有个picker的组件,就是滑动选择时间的,这样的

里边有个参数,叫默认选中这列的第几个(比如默认选中今天) 可看这个

它会在父页面加载一开始,就设置选中,比父级周期函数最早的还早。

这就导致--我通过周期函数动态改变默认选中值数据的时候,不行

解决方法是,让该picker组件渲染两次

第一次该失败失败,但是在失败的最后我们通过周期函数把数据添加进去了

第二次,通过setTimeout和v-if,重新执行页面的那一块,由于经过第一次,数据已经添加进去,现在picker里的默认数据就是我刚添加进去的那个

分析:

微任务:picker里边原生的设置默认数据应该是微任务

宏任务:通过setTimeout和v-if执行的是宏任务

微任务执行完执行宏任务~下边是画的流程图

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值