Я довольно новичок в angular и в настоящее время я использую angular 7.3.1 в своем проекте. Здесь я пытаюсь использовать asyn c pipe для моих подписок, но не могу заставить его работать. Ниже приведены необходимые части кода для этого вопроса
. html
<app-grid-cmp *ngIf="portfolioGridData | async" [gridData]="portfolioGridData" [gridColDef]="portfolioColumns" [titleName]="titleName" (pageEvent)="pageDetails($event)">
</app-grid-cmp>
.ts
portfolioGridData: GridDataResult;
getPortifolioData(pageNumber: number, pageSize: number) {
this.portfolioSub = this.gridService.getPortifolioDetails(pageNumber, pageSize).subscribe(data => {
this.portfolioGridData = {
data: data.portfoliosList,
total: data.totalCount
};
this.pageSizes = data.pageSizes;
},
error => {
console.log('error', error);
});
}
pageDetails(event: DataStateChangeEvent) {
this.pageNumber = event.skip / event.take + 1;
this.pageSize = event.take;
this.getPortifolioData(this.pageNumber, this.pageSize);
}
ngOnDestroy() {
if (this.portfolioSub) {
this.portfolioSub.unsubscribe();
}
}
service
getPortifolioDetails(pageNumber: number, pageSize: number): any {
const url = this.appConfig.config.portfolios;
return this.httpc.get(url + '/' + pageNumber + '/' + pageSize)
.pipe(map(res => res));
}
I я получаю сообщение об ошибке
PortfoliosGridComponent.html:10 ERROR Error: InvalidPipeArgument: '[object Object]' for pipe 'AsyncPipe'
Может кто-нибудь рассказать мне, как использовать асин c канал в моем сценарии. Спасибо.