У меня есть часы на странице, и они обновляются каждую секунду, используя setInterval()
, потому что проверяются все привязки приложения.Есть ли опция в угловом, чтобы поместить компонент в какой-то пузырь, чтобы часы на странице обновлялись каждую секунду и не вызывали обнаружение изменений в других компонентах?
Я знаю, что есть NgZone
класс с его runOutsideAngular()
методом, но насколько я знаю, он только изолирует код внутри * .ts файлов, а не шаблонов.
Пример кода:
clock.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-clock',
templateUrl: './clock.component.html',
styleUrls: ['./clock.component.css']
})
export class ClockComponent implements OnInit {
public currentLocalTime: Date;
constructor() {
setInterval(() => {
this.currentLocalTime = new Date();
}, 1000);
}
ngOnInit() {
}
}
clock.component.html
<p>
currentLocalTime
</p>
app.component.html
<app-clock></app-clock>
.
.
.
.
<app-another></app-another>