Barrierefreiheit · Senior · Frage 20 von 75
Ein React-Handler setzt State, um ein Panel zu zeigen, und ruft dann ref.current.focus() auf. Warum scheitert das?
- 1
ref-Objekte können auf keine fokussierbaren Elemente zeigen - 2React blockiert
focus()-Aufrufe in Event-Handlern - 3Das Panel ist beim Aufruf von focus noch nicht gerendert
Antwort zeigen
Richtige Antwort: Das Panel ist beim Aufruf von focus noch nicht gerendert
Erklärung
State-Updates werden gebündelt und nach dem Handler gerendert. Nutze einen Effect, der vom State abhängt, oder flushSync, wenn das Element sofort existieren muss.