vue项目中asyncawait+promise来将异步转为同步

Posted chenyoumei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue项目中asyncawait+promise来将异步转为同步相关的知识,希望对你有一定的参考价值。

在钩子函数中这样写:

mounted: function() {
  (async function(){
    console.log(1)
    var a = await that.testFunc1()
    console.log(a)
    console.log(3)
  })();
},
methods: {
  testFunc1: function() {
    return new Promise((resolve, reject)=>{
      this.testFunc2("","",res=>{
        resolve(res);
      });
    });
  },
  testFunc2: function(url,params,callback) {
    setTimeout(()=>{
      callback(2);
    },1000);
  }
}

 打印结果:

技术图片

 

以上是关于vue项目中asyncawait+promise来将异步转为同步的主要内容,如果未能解决你的问题,请参考以下文章

asyncawait与Promise

vue中Promise { pending }是什么?为何会出现这种状态,怎么解决这种问题?

【vue】reduce里面使用async await

asyncawait

Promise杂记

vue源码分析