Detaillierte Erklärung der Beziehung zwischen React und Redux

Detaillierte Erklärung der Beziehung zwischen React und Redux

Dokumentation: Chinesische Redux-Dokumentation

In der offiziellen Redux-Dokumentation wird Redux wie folgt definiert: ein vorhersehbarer JavaScript-Anwendungsstatusverwaltungscontainer.

1. Die Beziehung zwischen Redux und React

Redux bietet nicht nur Statusverwaltung für React-Anwendungen, sondern unterstützt auch andere Frameworks.

React ist eine Abstraktionsschicht für DOM (UI-Bibliothek), keine vollständige Lösung für Webanwendungen. Daher ist React komplizierter, wenn es um die Datenverarbeitung und Kommunikation zwischen Komponenten geht.

Bei großen und komplexen Anwendungen sind gerade diese beiden Aspekte am kritischsten. Daher ist es schwierig, große Anwendungen nur mit React zu schreiben.

Vorteile von Redux:

Bewerbungsstatus zentral speichern und verwalten

Ignorieren Sie bei der Behandlung von Komponentenkommunikationsproblemen die hierarchische Beziehung zwischen Komponenten

Vereinfachen Sie die Kommunikation zwischen Komponenten in großen und komplexen Anwendungen

Der Datenfluss ist klar und es ist einfach, Fehler zu lokalisieren

2. Reagieren Sie auf die gemeinsame Nutzung mehrerer Komponenten

Extrahieren Sie die Zustände aller Komponenten und konstruieren Sie einen zentralisierten Zustandsbaum in Analogie zum React-Komponentenbaum. Dieser Zustandsbaum entspricht eins zu eins dem React-Komponentenbaum, was der zustandsbehafteten Modellierung des React-Komponentenbaums entspricht:

├── Quelle
   ├── store # Redux-Verzeichnis, allgemein als Store bezeichnet
   │ ├── index.js # Store definieren und exportieren. Der Reducer wird importiert
   │ └── Reducer # Reducer-Funktion ├── App.js # Stammkomponente, importiere die Komponenten „Vater“ und „Unkel“ 

1. Redux kann die Komponentenhierarchie ignorieren

2. Für das Komponentensystem ist Redux eine globale „Variable“ eines Drittanbieters.

3. Drei Kernkonzepte von Redux

Kernkonzepte: store , action , reducer

1. speichern

Store ist ein Lager, der Kern von Redux, das Action und Reducer integriert, ähnlich dem Store von Vuex

Merkmale:

  • Eine Anwendung hat nur einen Store
  • Antragsstatus pflegen und Status abfragen: store.getState re.getState()
  • Wenn Sie einen Store erstellen, erhalten Sie den Reducer als Parameter: const st store = createStore(reducer)
  • Wenn Sie eine Statusaktualisierung einleiten, müssen Sie action:store.dispatch(action)
importiere { createStore } von 'redux'
// Einen Shop erstellen
const store = createStore(Reduzierer)

2. Aktion

action ist ein JS-Objekt mit zwei Eigenschaften:

type : Identifiziert das Attribut. Sein Wert ist eine Zeichenfolge. Mehrere Typen werden durch Aktionen getrennt

payload : Datenattribut, optional. Gibt die von dieser Aktion übertragenen Daten an

Merkmale:

  • Beschreiben Sie einfach, was zu tun ist
  • JS-Objekt, muss ein Typattribut haben, um den Aktionstyp zu unterscheiden
  • Je nach Funktion können noch weitere Daten mitgeführt werden um die entsprechende Funktion zu vervollständigen.
const action1 = { Typ:'addN', Nutzlast: 12 }
//speichern.dispatch(Aktion1)
 
const action2 = { Typ: 'Hinzufügen', Nutzlast: 1 }

3. Reduzierer (reine Funktion)

Wirkung:

1. Initialisierungszustand

2. Status ändern

Status ändern: Gibt einen neuen Status zurück, basierend auf dem alten Status und der übergebenen Aktion.

initState = 0
Funktion Reducer(Zustand = InitState, Aktion) {
  Rückgabestatus
}

Zusammenfassen

Dieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalt auf 123WORDPRESS.COM lesen können!

Das könnte Sie auch interessieren:
  • Erläuterung der Array-Verarbeitung in React und Redux
  • Verstehen Sie die anfängliche Verwendung von Redux in React in einem Artikel
  • Detaillierte Einführung in das React-Redux-Plugin
  • React Redux – Beispiel für die ersten Schritte
  • Eine kurze Diskussion über die Verbindung zwischen React und Redux react-redux

<<:  Der Unterschied zwischen MySQL Outer Join und Inner Join Abfrage

>>:  Inhaltstypbeschreibung, d. h. der Typ des HTTP-Anforderungsheaders

Artikel empfehlen

So führen Sie das React-Projekt auf dem offiziellen WeChat-Konto aus

Inhaltsverzeichnis 1. Verwenden Sie das „A“-Tag, ...

Tutorial zur Installation von MySQL8 auf Centos7

Neue Funktionen in MySQL 8: Meine persönliche Mei...

Detaillierte Erläuterung der dauerhaften Speicherung von Redis unter Docker

In diesem Kapitel beginnen wir mit dem Betrieb vo...

So bereinigen Sie den MySQL-Speicherplatz in der Alibaba Cloud

Heute habe ich von Alibaba Cloud eine Festplatten...

Mounten Sie die Festplatte in einem Verzeichnis unter Ubuntu 18.04

Einführung In diesem Artikel wird beschrieben, wi...

CentOS 7-Konfiguration Tomcat9+MySQL-Lösung

Tomcat konfigurieren Installieren Sie zuerst Tomc...

Warum wird die MySQL-Paging-Funktion bei Verwendung von Limits immer langsamer?

Inhaltsverzeichnis 1. Testexperiment 2. Leistungs...

XHTML: Rahmenstruktur-Tag

Rahmenstruktur-Tag <frameset></frameset&...

Eine kurze Analyse von MySQL-Sperren und -Transaktionen

MySQL selbst wurde auf Basis des Dateisystems ent...

Verwenden Sie zum Senden des Formulars ein Bild statt einer Schaltfläche.

Code kopieren Der Code lautet wie folgt: <form...