在我的一个控制器中,我有:
idWedstrijdSpeler
并根据窗口宽度,我渲染不同的视图。其中一个需要做一些计算。 但是由于更改检测机制过于频繁地触发,这确实会减慢应用程序的速度,并且会有延迟。
这种情况如何管理得最好?
答案 0 :(得分:2)
这与角度变化检测无关,它是经常发生的调整大小事件
@HostListener()
目前也不适合列出经常发出的事件https://github.com/angular/angular/issues/13248
您可以使用
constructor(private zone: NgZone) {
this.zone.runOutsideAngular(() => {
Observable.fromEvent(window, 'resize')
.debounceTime(100)
.subscribe((event) => {
this.zone.run(() => {
this.currentWindowWidth = window.innerWidth;
});
});
});
}