我正在使用ngrx存储来记录状态,我的州目前拥有我的帐户列表和当前页面(用于分页)。
在我的帐户组件列表中,我调用商店获取当前页面并将其传递给服务(web api)以获取帐户列表。
this.currentPage$ = this.store.select(getCurrentPage);
我的角度服务期望变量(currentPage),但作为一种数字,store select返回一个Observable。
getListOfCustomer(currentPage: number): Observable<ListDto<CustomerList>> {}
我的变量this.currentPage$
目前是一种Observable<number>
我如何将Observable<number>
转换为number
将其传递给我的服务?
订阅获取结果为数字:
currentPageSub :Subscription;
this.currentPageSub =
this.store.select(getCurrentPage).subscribe((page: number) => {
this.currentPage$=page;
});
您可以创建异步函数并将observable转换为promise并等待它
async method(){
var pageNr = await this.currentPage$.toPromise();
this.getListOfCustomer(pageNr);
}