目前想做一个同步的执行方式,但是需要调用异步操作
代码如下:
同步:console.log('1')
异步:setTimeout(console.log('2'),1000)
同步:console.log('3')
实际执行为1.3.2
但是我是想执行为1.2.3
必须要等待2后才能执行3,请问有什么办法吗?
目前想做一个同步的执行方式,但是需要调用异步操作
代码如下:
同步:console.log('1')
异步:setTimeout(console.log('2'),1000)
同步:console.log('3')
实际执行为1.3.2
但是我是想执行为1.2.3
必须要等待2后才能执行3,请问有什么办法吗?
const app = getApp()
Page({
data: {
},
onLoad() {
this.fun1();
this.fun2();
},
fun1() {
console.log(1);
let p = new Promise((resolve) => {
setTimeout(() => {
console.log(2);
resolve();
}, 1000)
})
p.then(() => {
console.log(3);
})
},
async fun2() {
console.log(1);
let p = new Promise((resolve) => {
setTimeout(() => {
console.log(2);
resolve();
}, 1000)
})
await p
console.log(3);
}
})