Angular 2中Observable中获取数据后的队列/回调函数

Queue/callback function after fetching data in an Observable in Angular 2

本文关键字:队列 回调 函数 数据 Observable 获取 Angular      更新时间:2023-09-26

我试图在从服务获取数据后排队或创建一个回调函数,但该函数似乎是异步调用的。我希望在获取数据后调用该函数,因为Observable中的数据是该函数所必需的。到目前为止,这还不起作用,因为在所有数据都分配给它之前,函数就被调用了

this._itemsService.getItems().subscribe(items => this.items = items, err => {}, callThisFunctionAfter());

有没有办法把函数变成回调,或者像promise一样排队?

您需要使其成为闭包,而不是函数调用。

this._itemsService.getItems().subscribe(items => this.items = items, err => {}, () => callThisFunctionAfter());

如果没有() =>,则调用该函数,并将结果作为回调传递。

这就是callThisFunctionAfter()subscribe()之前执行而不是在可观察对象关闭时执行的原因。