2016-07-12 3 views
1

Ich bin neu in der Reaktion native und derzeit eine Reaktion native App entwickeln, die Anmeldung erfordern. Nach erfolgreicher Anmeldung wechselt die Ansicht in Homepage. Das Problem ist, nachdem ich die App geschlossen und wieder geöffnet habe, zeigt sie mir wieder LoginPage. Normalerweise, wenn Sie eine App schließen, die eine Anmeldung erfordert und sie erneut öffnet, wird sie zur Startseite umgeleitet, wenn Sie sich bereits angemeldet haben. aber in meinem Fall zeigt es immer zuerst die Login-Seite.So ändern Sie die anfängliche Route des Navigators nach der Anmeldung reagieren native

Wie wird die anfängliche Route zu HomePage geändert, wenn sich der Benutzer beim Schließen bereits anmeldet und die App erneut öffnet?

Hier ist ein Code, was ich getan habe:

class Main extends Component { 
 
    
 
    _renderScene(route, navigator) { 
 
     if (route.id === 1) { 
 
     return <LoginPage navigator={navigator} /> 
 
     } else if (route.id === 2) { 
 
     return <HomePage navigator={navigator} /> 
 
     } else if (route.id === 3) { 
 
     return <DetailPage navigator={navigator} /> 
 
     } else if (route.id === 4) { 
 
     return <CreateBookingPage navigator={navigator} /> 
 
     } 
 
    } 
 

 
    _configureScene(route) { 
 
    return Navigator.SceneConfigs.PushFromRight; 
 
    } 
 
    
 
    
 
    render() { 
 
     return (
 
     <Navigator 
 
     initialRoute={{id: 1, }} 
 
     renderScene={this._renderScene} 
 
     configureScene={() => { return Navigator.SceneConfigs.PushFromRight; }} /> 
 
    ); 
 
    } 
 
}

+0

Ich habe das gleiche Problem haben Sie jemals das lösen? –

Antwort

0

Sie Shared Preferences verwenden könnte zu speichern, wenn ein Benutzer angemeldet ist oder nicht ist.

+0

Eigentlich weiß es, dass der Benutzer logggin ist, weil er nach einem erfolgreichen Login (mit leerem Textinput) zum zweiten Mal die Login-Taste berührt und auf die Startseite umleitet. Das Problem ist, wenn ich die App schließe und wieder öffne, zeigt es immer die Login-Seite an, nicht auf homePage umleiten. – sptra

+0

Kannst du nicht einfach eine if-Anweisung in deiner Login-Aktivität in der onResume() - Methode implementieren - wenn der Benutzer angemeldet ist -> nächste Aktivität öffnen. Aber ich weiß nicht, ob der Benutzer die Animation sehen kann. – SomeRandomNameCuzWhyNot

+0

Es tut mir leid, ich glaube, Sie missverstehen mit meiner Frage. Die App kann die nächste Aktivität zur Startseite usw. nach der Anmeldung öffnen. Normalerweise, wenn Sie eine App schließen, die eine Anmeldung erfordert und diese erneut öffnet, wird sie auf die Startseite umgeleitet, wenn Sie sich bereits angemeldet haben. aber in meinem Fall zeigt es immer zuerst die Login-Seite, nicht direkt zur Startseite. – sptra

0

überprüfen Sie die Manifest-Datei für

<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

Set es in Homepage-Aktivität können Sie Benutzernamen in gemeinsamen Gemeinsame Einstellungen speichern und und überprüfen Zustand dort über, wenn Sie Benutzernamen als null sind immer dann Vorsatz für Loginpage passieren

Verwandte Themen