State Management · Senior · Frage 67 von 75
Wann hilft useSelector(selector, shallowEqual)?
const { name, email } = useSelector((s) => ({ name: s.user.name, email: s.user.email }), shallowEqual);- 1Wenn ein neues Objekt oft gleiche Felder hat
- 2Immer - man sollte es für jeden Selektor nutzen
- 3Wenn der Selektor einen primitiven Wert liefert
Antwort zeigen
Richtige Antwort: Wenn ein neues Objekt oft gleiche Felder hat
Erklärung
Ohne es fällt das neue Objekt beim === durch und rendert bei jeder Action neu. Alternativen: Primitive einzeln auswählen oder einen memoisierten Selektor nutzen.