ich ziemlich neu bin, ein Problem zu reagieren und auf beim onChange
Verfahren auf einem Eingabefeld verwenden, die in einer großen Datenliste erzeugt wird.
Als parentcomponent
ist der Eigentümer der Daten, biete ich eine handleUpdate()
Methode für das Kind Komponente (dataTableComponent).
Da React das ganze Datatridat neu rendern muss, ist der Eingang onChange
sehr langsam.
Wie würde ich das besser machen? Gibt es eine Möglichkeit, nur die eine modifizierte Zeile zu aktualisieren. Oder was mache ich falsch mit reagieren?Reagieren langsam auf Eingangsänderung arbeitet
Zusammenfassung: Parent enthält ein Array mit Objekten, die den childComponent geben wird. Die childComponent erstellt ein <table>
-Element mit Datenobjektattributen als Spalten. Eine Spalte ist editierbar und wird als <input>
Tag angezeigt. Dieses Tag hat eine onChangehandler
, die auf eine Funktion verweist, die von dem übergeordneten Element übergeben wird. Der Elternteil übernimmt also das Update und gibt die gesamte Liste neu. Für mich ist klar, dass dies langsam sein muss. ABER wie könnte ich das besser machen?
Sie können eine höhere Auftragskomponente, mit der Funktion wie die Requisiten, später die Funktion erklären und Ihre Informationen, die Sie verwenden Zustand vermeiden, dass stattdessen auf diese Weise passieren und Sie Requisiten rein statt, wo Sie Ihre Funktion verwenden, wenn Sie brauchen es –
Sollten wir nicht vermeiden, Requisiten und Zustand zu mischen? Mit Ihrer Lösung hätte ich die Datenredundierung? – Marc
Dies wäre eine einmalige Initialisierung im Konstruktor, danach würden Sie nur die Zustände –