Ich habe eine Reaktion/Redux-Anwendung, die groß genug geworden ist, um einige Leistungsoptimierungen zu benötigen.React + Redux Performance-Optimierung mit ComponentShouldUpdate
Es gibt ca. ~ 100 einzigartige Komponenten, die über Websocket-Ereignisse aktualisiert werden. Wenn viele Ereignisse auftreten (etwa ~ 5/Sekunde), beginnt der Browser erheblich langsamer zu werden.
Der größte Teil des Status wird in einem Redux-Speicher als Immutable.js-Objekte gespeichert. Das gesamte Geschäft wird in ein einfaches JS-Objekt konvertiert und als Props über den Komponentenbaum weitergegeben.
Das Problem ist, wenn ein Feld aktualisiert, der gesamte Baum aktualisiert und ich glaube, das ist, wo es am meisten Raum für Verbesserungen gibt.
Meine Frage:
Wenn der gesamte Speicher durch alle Komponenten übergeben wird, gibt es eine intelligente Art und Weise Komponenten Aktualisierung zu verhindern, oder benötige ich eine benutzerdefinierte shouldComponentUpdate
Methode für jede Komponente, basierend auf welchen Requisiten es (und seine Kinder) tatsächlich benutzen?
Danke für die hervorragende Beratung. Ich habe mein spezielles Problem bis zu einer Socket-Nachricht verfolgt, die gleichzeitig mehrere Redux-Aktionen ausgelöst hat. Die Verbindung mehrerer Komponenten wird definitiv der nächste Schritt sein! – patmood
Sicher. Ich muss diese Konversation immer noch von oben nach unten im Vergleich zu mehreren Verbindungen extrahieren. Wird diese Antwort aktualisieren, wenn ich das erledigt habe. – markerikson