【发布时间】:2019-05-01 09:31:09
【问题描述】:
我对异步函数有一点问题(在 functionSync1 中有一个异步函数)。 我有这个代码:
main() {
functionSync1();
functionSync2();
}
functionSync1() {
console.log('start');
let promise =
Promise.resolve(this.localStorage.getItem('myItem').toPromise());
promise.then((val) => console.log(val));
}
functionSync2() {
console.log('end');
}
由于某些原因我不能修改main()的代码,所以我想修改functionSync1()以便等待函数结束,直到console.log(val)被执行。
现在console.log('end')在console.log(val)之前执行,所以输出为:
start
end
myItemValue
我需要这个:
start
myItemValue
end
有什么想法吗?
【问题讨论】:
-
如果你不能改变
main,那是不可能的。
标签: javascript angular function asynchronous