/ / React-Router aktualisiert Seite, wenn ich die Route in der Adressleiste ändere - Javascript, Reactjs, Redux, Reakt-Router, React-Redux

React-Router aktualisiert die Seite, wenn ich die Route in der Adresszeile ändere - javascript, reactjs, redux, react-router, react-redux

Ich verwende Redux und React-Redux, um den Status meiner Anwendung zu ändern.

Ich habe zwei Komponenten, Login und Home.

Ich werde eine Aktion ausgeben, um den Status zu aktualisieren, wenn der Benutzer korrekt protokolliert ist, und navigiere zu dem Home Komponente. Ich verwende eine Authguard in der Route von Home Komponente, um zu prüfen, ob der Benutzer angemeldet ist oder nicht.

Aber wenn ich zum navigiere Home Wenn Sie die Route in die Adressleiste eingeben, wird die Seite aktualisiert, und der Status wird auf die ursprünglichen Werte geändert.

Wie kann ich die Statuswerte beibehalten, auch wenn ich mithilfe der Adressleiste zu einer Komponente navigiere?

Antworten:

4 für die Antwort № 1

Sie müssen die Daten in speichern localstorage Wenn Sie mit der Taste zu einer Komponente navigierenAdressleiste. Wenn Sie über die Adressleiste navigieren, wird die Seite sozusagen aktualisiert, und der gesamte Speicher geht verloren. Sie müssen den Speicher erneut hydrieren, um den vorherigen Zustand des Redux anzuzeigen.

Sie können Middlewares wie verwenden redux-persist oder Redux-Speicher Dadurch wird der Redux-Speicher gespeichert und der Redux-Speicher wird beim erneuten Laden der Seite hydratisiert.