/ / Verwenden von reduxs store.getState () und store.dispatch (), um Änderungen vorzunehmen, ohne in React abonniert zu werden? - Javascript, React-Redux

Mit den Speichern store.getState () und store.dispatch () von Redux Änderungen vornehmen, ohne React zu abonnieren? - Javascript, reagieren-redux

Ich habe mir die Getting Started with Redux-Serie angesehenIch arbeite daran, meinen bestehenden React-Code für die Verwendung von Redux zu ändern. Ich bin jedoch in ein Dilemma geraten, für das ich keine Antworten finden kann: Ich möchte die Geschäftsdaten (die viele meiner React-Komponenten verwenden) für bestimmte Ereignisse wie die Interaktion mit der Benutzeroberfläche ändern Sie möchten, dass alle UI-Komponenten jede im Store vorgenommene Änderung abonnieren.

Kann / soll ich stattdessen ein separates machen.js-Datei mit Funktionen, die direkt auf den Store zugreifen können, um .getState () und .dispatch () aufzurufen, die meine UI-Komponenten importieren und bei Bedarf aufrufen können, anstatt den Store selbst zu abonnieren

Oder missverstehe ich etwas grundlegend und das Abonnieren des Shops hätte genau die gleiche Wirkung? Ich möchte die Geschwindigkeit optimieren; deshalb habe ich zu Redux gewechselt.

Antworten:

1 für die Antwort № 1

Ich möchte die Geschäftsdaten ändern (welche von vielen meinerKomponenten reagieren wird auf bestimmte Ereignisse wie die Interaktion mit der Benutzeroberfläche angewendet, aber ich möchte nicht alle UI-Komponenten, um jede Änderung im Geschäft zu abonnieren.

Auschecken Reakt-Redux, es ist die offizielle Bindung für React und ReduxApps. Es bietet die Möglichkeit, bestimmte Komponenten bei redux zu abonnieren und nur auf die Änderungen zu achten, an denen Sie interessiert sind. Darüber hinaus werden verschiedene Optimierungen implementiert, um unnötiges erneutes Rendern zu vermeiden.

Kann / soll ich stattdessen ein separates machen.JS-Datei mit Funktionen, die das können Greifen Sie direkt auf den Store zu UI-Komponenten können importieren und bei Bedarf aufrufen, anstatt zu abonnieren zum Laden selbst?

Sie können alles tun, was Sie möchten, aber seien Sie nicht überrascht, wenn es nach einer Weile unbequem wird.

Oder missverstehe ich etwas grundlegend und abonniere es hätte der Laden genau den gleichen Effekt?

Ja, Sie könnten React-Redux verwenden und nur Teile des Geschäfts abonnieren, die Sie interessieren.

Ich möchte die Geschwindigkeit optimieren; deshalb habe ich zu Redux gewechselt.

Nicht sicher, was Ihre besondere Situation ist / war,Im Allgemeinen besteht der Punkt von Redux jedoch darin, einen vorhersehbaren und überschaubaren Weg zur Aufrechterhaltung eines Anwendungsstatus bereitzustellen - er beschleunigt nichts direkt.