vue怎么让一个函数执行完再执行另一个?
created(){ this.getItem()
this.search()
}
created里有两个函数
怎么让getItem()执行完了再执行search()呀
回答:
如果是同步函数,那么自然会等待 getItem()
执行完再执行 search()
。
如果是异步函数,vue 钩子函数可以是异步函数,即:
async created() { await this.getItem();
this.search();
}
回答:
这个没有什么参数,简单点可以把第二个方法放到第一个方法里面,如果有请求,就放到请求成功里面
回答:
created(){ this.getItem(this.search)
}
然后在this.getItem
函数中的最后去执行this.search
;
getItem(cb) { ...
cb && cb();
}
回答:
使用await/async
是最简单的解决办法,只需要这样改造:
async created(){ await fun_a();
await fun_b();
//最后一个执行的方法不必用await
fun_c();
}
然后每个方法都必须返回一个Promise
:
fun_a(){ return new Promise((resolve, reject){
if(true) resolve();
reject();
});
}
就可以了
以上是 vue怎么让一个函数执行完再执行另一个? 的全部内容, 来源链接: utcz.com/p/936233.html