Heim >Web-Frontend >js-Tutorial >Statusfreigabe zwischen Vanilla- und React-Apps mit Redux

Statusfreigabe zwischen Vanilla- und React-Apps mit Redux

WBOY
WBOYOriginal
2024-08-14 20:31:14977Durchsuche

Sharing State Between Vanilla and React Apps with Redux

Die Problemstellung

Ich möchte einen gemeinsamen Datenstatus zwischen Vanilla Js und React App teilen.

Was ist in diesem POC

  • Wir werden zwei ähnliche Counter-Apps in Vanilla erstellen und reagieren.
  • Die Zählung sollte in einem gemeinsamen Zustand gespeichert werden
  • Wenn wir die Anzahl in Vanilla aktualisieren, sollte sie sich in der Reaktion widerspiegeln und umgekehrt

Projektstruktur

Unser Projekt ist in zwei Hauptabschnitte unterteilt:

  1. Stammverzeichnis: Enthält Kerndateien für den Vanilla-JavaScript-Teil der App.
  2. react-mf-Verzeichnis: Enthält das React-Mikro-Frontend, das mit dem Vanilla-JavaScript-Teil interagiert.

Die Architektur der App kann unter dem Link hier überprüft werden

Schlüsseldateien und ihre Rollen

Stammverzeichnis

  • index.html: Dies ist der Einstiegspunkt unserer App, der die HTML-Struktur einrichtet und Links zu Stylesheets und JavaScript-Dateien enthält. Es verfügt über zwei wichtige div-Elemente mit id="app" und id="root", die zum Mounten der Vanilla JS-App bzw. des React-Mikrofrontends verwendet werden.

  • main.js: Fungiert als Haupt-JavaScript-Datei zum Initialisieren des Vanilla-JS-Teils der App. Es verwaltet die Kernlogik und interagiert mit dem gemeinsamen Status.

  • counter.js: Enthält den Code, der für die Weiterleitung von Aktionen an den Redux-Store verantwortlich ist. Beispielsweise wird eine INCREMENT-Aktion ausgelöst, um den Zähler zu aktualisieren.

  • store.js: Richtet den Redux-Store ein, der den Status der Anwendung verwaltet und die Konsistenz zwischen den Vanilla JS- und React-Teilen der App gewährleistet.

React-MF-Verzeichnis

  • App.jsx: Die Haupt-React-Komponente unseres Mikro-Frontends. Es nutzt den useState-Hook für die lokale Statusverwaltung und abonniert den Redux-Store, um den globalen Status widerzuspiegeln. Es stellt eine Schaltfläche zum Auslösen einer INCREMENT-Aktion dar und zeigt die aktuelle Anzahl aus dem Store an.

  • main.jsx: Der Einstiegspunkt für das React-Mikro-Frontend, wo die React-App initialisiert und gerendert wird.

Den vollständigen Code finden Sie im GitHub-Repository.

Das obige ist der detaillierte Inhalt vonStatusfreigabe zwischen Vanilla- und React-Apps mit Redux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn