我的父组件html包含以下行以默认值为maxPrice调用子组件:



<app-filter-events [maxPrice]='_maxPrice'></app-filter-events>





在实例化子组件之前,父组件通过调用API来获取maxPrice,这是代码:



constructor(private _dataService: DataService) {
 this._dataService.getEventsByCriteria(this._filterCriteria).subscribe(res => this._maxPrice = res);
}





问题是在子组件中未定义maxPrice。我猜问题出在对API的异步调用上,但我不知道要解决它。

谢谢

编辑:
我的问题是,如果未定义maxPrice,则不隐藏子组件,而是在实例化子组件之前设置maxPrice。

最佳答案

在调用之前,先将变量设置为false,然后在异步完成后将其设置为true,这非常简单。您不希望在完成之前将组件加载到dom中。

<div *ngIf="maxPriceBoolean">
  <app-filter-events [maxPrice]='_maxPrice'></app-filter-events>
</div>

09-25 18:24