VUE中的同步和异步调用顺序

本文探讨了Vue中如何通过async/await实现方法调用的同步效果,重点讲解了在包含Promise或异步操作的方法中,如何确保getPsCountryList、getTimeZone和getUserInfo的执行顺序。
摘要由CSDN通过智能技术生成

VUE中的方法调用顺序是依次进行的,方法体内部也是依次执行的,但是,两个方法体的执行顺序并不能严格控制。
以下方法中都带有promise函数或异步调用。

    initUserData() {
      this.getPsCountryList() // 1 获取国家列表stateOptions,方法内同步
      this.getTimeZone() // 2 获取时区timezones,方法内同步
      this.getUserInfo() // 3 获取用户信息
    }

在实际运行中,三个方法的执行顺序是1-2-3,但是方法3始终不能获取到stateOptions和timezones

背后的调用顺序是1-2-3,但是,方法的执行时间并没有严格控制。

如果想要做到方法调用和执行是同步的,可以使用async和await修饰符。

例如:

    async initUserData() {
      await this.getPsCountryList() // 1 获取国家列表stateOptions,方法内同步
      await this.getTimeZone() // 2 获取时区timezones,方法内同步
      await this.getUserInfo() // 3 获取用户信息
    }
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值