Angular · Senior · Frage 2 von 75

Warum ruft man in einer Zone-basierten App NgZone.runOutsideAngular() auf?

this.zone.runOutsideAngular(() => {
  window.addEventListener("mousemove", this.onMove);
});
Antwort zeigen

Richtige Antwort: Damit häufige Events nicht bei jedem Tick die Change Detection auslösen

Erklärung

Tausende mousemove- oder requestAnimationFrame-Callbacks würden jeweils eine App-weite Change Detection auslösen (Zone Pollution). Kehre mit zone.run() nur zurück, wenn die UI wirklich ein Update braucht.

Zum Weiterlesen

Fehler in der Frage

Angular · Senior · Frage 2

Teste dich selbst

Mach den Test Angular · Senior: Fragen und Antworten werden gemischt, und am Ende wartet eine Übersicht der Fehler.

Diesen Test machen