小编Abh*_*oni的帖子

ngOnChanges 多次调用

我使用 ngFor 生成了多个离子幻灯片,并在那里插入了一个组件。它多次调用 ngOnChanges。我希望它只调用一次,以便我可以调用我的 api。

我尝试过使用多个角度生命周期挂钩。

这就是我创建幻灯片的方式,菜单有 19 个元素

<ion-slides #slides [options]="slideOpts" (ionSlideDidChange)="slideChanged($event)">
<ion-slide *ngFor="let i of menu; let j = index">
  <h1>{{ i.name }}</h1>
  <app-homenews [categoryId]="currentCategoryId" ></app-homenews>
</ion-slide>
</ion-slides>
Run Code Online (Sandbox Code Playgroud)

这就是我们进行变更检测的方式

@Input() categoryId: number;

ngOnChanges(changes: SimpleChanges) {
   let chg = changes['categoryId'];
   console.log(chg.currentValue);
} 
Run Code Online (Sandbox Code Playgroud)

我希望它只被调用一次,现在它已经调用了 19 次。

我可以在这里使用 rxjs 吗?

ionic-framework angular ionic4 angular7

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

angular ×1

angular7 ×1

ionic-framework ×1

ionic4 ×1