Angular · Senior · Frage 11 von 75

Wie räumt man in einem effect auf, bevor er erneut läuft oder zerstört wird?

effect((onCleanup) => {
  const id = setInterval(() => this.poll(this.url()), 5000);
  onCleanup(() => clearInterval(id));
});
Antwort zeigen

Richtige Antwort: Mit dem onCleanup-Callback registrieren, den der Effect bekommt

Erklärung

Das Aufräumen läuft vor der nächsten Ausführung (wenn sich url ändert) und wenn der Effect mit seinem Injection Context zerstört wird, und verhindert doppelte Intervalle.

Zum Weiterlesen

Fehler in der Frage

Angular · Senior · Frage 11

Teste dich selbst

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

Diesen Test machen