[Bearbeiten] Dies war aufgrund meiner eigenen Verwirrung, Entschuldigungen.Warum sagt React, die Eigenschaft 'selected' nicht auf <option> Elemente zu setzen?
Einstellen der selected
Eigenschaft auf <option>
Elemente in JSX funktioniert perfekt, aber es bewirkt, dass der Wurf eine Warnung reagieren:
Warning: Use the 'defaultValue' or 'value' props on <select> instead of setting 'selected' on <option>.
Einstellung defaultValue
auf dem übergeordneten <select>
Element bewirkt, dass die value
der <select>
bis auf dem Standard diese Einstellung, aber es setzt nicht die Standardeinstellung <option>
. Dadurch wird das angezeigt, was der Benutzer sieht und was nicht synchron ist.
Einstellen der value
Eigenschaft auf dem übergeordneten <select>
Element mich zwingt, dann einen onChange Handler hinzufügen, um den Wert in der Komponente Zustand gesetzt, und eine Reihe von zusätzlichen Code schreiben, um alle zu erreichen, was einfach selected
Einstellung auf den <option>
Elemente mit einem tut einzelnes Wort.
Weiß jemand, warum React diese Warnung ausgibt? Ich möchte keinen zusätzlichen Code schreiben, um eine Warnung zu entfernen, die nicht der Realität zuzuordnen ist. Soweit ich weiß, funktioniert es gut, also warum sollte ich es nicht benutzen?
Was meinen Sie, wenn Sie sagen, dass 'defaultValue' nicht "den Standard ausgewählt gesetzt ''
' ' In diesem Codebeispiel, wenn die Komponente zuerst den Wert des select-Elements rendert, ist" B ", aber was der Benutzer als" standardmäßig ausgewählt "sieht, ist A, als wäre es wenn ich keine defaultValue-Einstellung hatte . – rodwa4
Huh? Das passiert aber nicht. Https://jsfiddle.net/69z2wepo/39163/ – azium