【发布时间】:2018-07-26 13:11:58
【问题描述】:
我有以下组件模板:
<div *ngFor="let ctrl of data; trackBy:ctrl?.Id">
<div *ngIf="getNext(ctrl.nextDate) | async as next">
<span>{{next | date: 'dd.MM.yyyy'}}</span>
</div>
</div>
getNext() 是一个返回Observable<Date> 的简单方法:
public getNext(deadline: string): Observable<Date> {
return this.http.get<Date>(`${this.config.apiEndpoint}/api/meeting?deadline=${deadline}`);
}
我的目标是调用该方法并使用模板中的异步管道订阅 observable。但是,当我运行应用程序时,会生成无休止的 GET 和 OPTIONS 请求。
另外,如果我将方法调用放在 ngFor 之外,也会发生同样的情况。由于每个集合项的参数不同,因此需要在 ngFor 内部执行调用。
为什么方法只调用一次,订阅后就不再产生调用?
【问题讨论】:
标签: angular typescript observable rxjs5