イオンスライドコンポーネントに問題があります。私はion-slide
の中でメソッドを呼び出していますが、このメソッドはRIDICULOUSLY OFTENと呼ばれています。また、すべてが大幅に遅くなります。イオンイオンスライド性能の問題、あまりにも頻繁なメソッドコール
最初はメソッドが900回(私は100個のスライドしか表示していませんが)呼び出され、スライドのわずかなドラッグで再び900メソッド呼び出しがトリガーされます。最初のスライドから2番目のスライドまでスワイプするだけです私はどれくらいゆっくりとスワイプするかによって、5000回以上トリガされました。
なぜでしょうか?私はIonic 4.4、Angular 5.0.3、Ionic-Angular 3.9.2を使用しています。
テンプレート
<ion-content>
<ion-slides>
<ion-slide *ngFor="let slide of slides">
<div>
{{slide}} - {{myMethod()}}
</div>
</ion-slide>
</ion-slides>
</ion-content>
コンポーネント
@Component({
selector: 'page-my',
templateUrl: 'my-page.html'
})
export class MyPage implements OnInit {
slides: number[] = [];
methodCounter: number = 0;
ngOnInit() {
let numberOfSlides = 100;
for (var i = 0; i < numberOfSlides; i++) {
this.slides[i] = i;
}
}
public myMethod(): string {
console.log('myMethod called ' + this.methodCounter++);
return 'foo';
}
}
https://www.youtube.com/watch?v=5-L4ZOIX5Ew