javascript / intermediate
Snippet
Eigene Gleichheits-Logik für Signals
Standardmäßig verwenden Signals die referenzielle Gleichheit für Objekte. Durch die Bereitstellung einer benutzerdefinierten Gleichheitsfunktion können Sie unnötige UI-Re-Renderings verhindern, wenn die zugrunde liegenden Dateneigenschaften (wie eine ID) gleich bleiben, selbst wenn sich die Objektreferenz ändert.
snippet.js
1
2
3
userData = signal({ id: 1, name: 'Alex' }, {equal: (a, b) => a.id === b.id});
angular
Erklärung
1
signal({ id: 1, ... }, {
Initialisiert ein Signal mit einem Objekt und einer Options-Konfiguration.
2
equal: (a, b) => a.id === b.id
Definiert eine benutzerdefinierte Vergleichslogik, um zu bestimmen, ob das Signal seine Konsumenten benachrichtigen soll.