2017-02-24 3 views
0

Ich finde den Datenfluss und schreibe aktionsorientierten Code, um mit Redux umzugehen.Wie speichern Login-Anmeldedaten in Redux?

Dies ist der Ablauf: Ich erreiche SplashScreen und prüfen, ob accessToken existiert. Wenn nein, sende ich den Benutzer an LoginScreen. Ansonsten bringe ich ihn zum HomeScreen.

Der Fluss ist ziemlich einfach, aber ich bin nicht in der Lage, um den Token zu speichern, das Token ablaufen oder nur überprüfen, ob der Benutzer angemeldet ist. Also, technisch, wenn ein Benutzer anmeldet, den Zustand (Zugriffs-Token) sollte sich ändern. Ich frage nicht nach Code, nur ein Pseudo-Code und eine kleine Erklärung helfen!

Antwort

0

Wenn Sie Benutzer möchten die redux Speicher speichern Token oder alle Benutzerdaten müssen Sie den Zustand, um sicherzustellen, wird auf localstorage gespeichert, und dafür können Sie eine redux Middleware like this oder this verwenden, oder Sie verwenden können Middle- ware Ihrer eigenen:

export default store => next => action => { 
    let result = next(action) 
    localStorage.state = JSON.stringify(store.getState()) 
    return result 
} 

ich weiß nicht, ob Sie Router reagieren verwenden, wenn Sie sind, werfen Sie einen Blick auf dieses Beispiel: authenticator ich denke, es ist wirklich der beste Weg, es zu tun ..

0

In meiner App habe ich react-native-keychain verwendet. Wenn sich ein Benutzer anmeldet, speichere ich den accessToken im Redux-Speicher. Von dort erhalte ich jedes Mal, wenn ich eine Anfrage erstelle, das Token aus dem Laden, stelle sicher, dass es gültig ist, und mache die Anfrage.

Verwandte Themen