State Management · Junior · Frage 2 von 75
Warum ändert sich der Zähler auf dem Bildschirm nicht?
function Counter() {
let count = 0;
return <button onClick={() => count++}>{count}</button>;
}- 1
onClick-Handler können keine Variablen der Komponente ändern - 2Eine lokale Variable bleibt nicht erhalten und löst kein Rendern aus
- 3Der Button braucht
type="button", damit der Klick den Text ändert
Antwort zeigen
Richtige Antwort: Eine lokale Variable bleibt nicht erhalten und löst kein Rendern aus
Erklärung
count wird bei jedem Rendern als 0 neu erzeugt, und das Erhöhen bittet React nicht um ein erneutes Rendern. Man braucht const [count, setCount] = useState(0) und setCount(count + 1).