async await 异步、等待、按顺序执行


<template>
  <div>
  </div>
</template>
<script>
export default {
  name: 'AsyncAwait',
  data() {
    return {
    }
  },
  created(){
    this.getProvinces()
  },
  methods:{
    //await 只能用在async标注的函数中
    province(){
      return new Promise((resolve)=>{
      setTimeout(() => {
          resolve('省')
          console.log('省')
       }, 4000);
      })
      
    },
    city(){
      return new Promise((resolve)=>{
        setTimeout(() => {
          resolve('市')
          console.log('市')
       }, 2000);
      })
      
    },
    country(){
      return new Promise((resolve)=>{
        setTimeout(() => {
          resolve('县')
          console.log('县')
       }, 3000);
      })
      
    },
    async getProvinces(){
      await this.province()
      await this.city()
      await this.country()
    },
  }
}
</script>
<style scoped>

</style>

打印显示的顺序为:省 市 县

如果在函数里
            this.$nextTick(async _ => {
    await this.province()
    await this.city()
    await this.country()
            })


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM