如何在ngZone外运行async函数?



我尝试在当前区域外打开脚本:

async ngAfterViewInit(): Promise<void> {
this.ngZone.runOutsideAngular(() => {
await this.run();
});
}

async run() { // TODO }

我得到这个错误:

'await' expressions are only allowed within async functions and at the top levels of modules.ts

ngAfterViewInit函数是异步的,但是你已经将this.ngZone.runOutsideAngular与非异步回调函数一起使用了。

你的代码需要看起来像这样…

ngAfterViewInit(): void {
this.ngZone.runOutsideAngular(async () => {
await this.run();
});
}
async run() { // TODO }

相关内容

  • 没有找到相关文章

最新更新