React · Middle · Frage 65 von 75
Warum kann eine Liste kontrollierter Eingabefelder bei jedem Tastendruck den Fokus verlieren?
{fields.map((f) => <input key={Math.random()} value={f.value} onChange={...} />)}- 1
onChangenimmt dem Feld den Fokus, bevor der Zustand gesetzt wird - 2Kontrollierte Felder verlieren bei Zustandsänderungen immer den Fokus
- 3Ein neuer zufälliger
keybei jedem Rendern mountet jedes Feld neu
Antwort zeigen
Richtige Antwort: Ein neuer zufälliger key bei jedem Rendern mountet jedes Feld neu
Erklärung
Keys müssen stabil sein. Ein wechselnder Key zerstört den alten DOM-Knoten (samt Fokus und Zustand) und erzeugt einen neuen.