问题很简单,我知道同一个问题有很多答案,但我有不同的答案
App.js
我几乎都试过了,但没有成功。
所以我的
小精灵
看起来像这样
import React, { Component } from 'react';
import {
Platform,
StyleSheet,
Text,
View,
StatusBar
} from 'react-native';
import { createStackNavigator } from 'react-navigation';
import { Header, Button, Spinner } from './src/components/comman';
import SplashScreen from 'react-native-splash-screen';
import LoginForm from './src/components/LoginForm';
import SignupForm from './src/components/SignupForm';
import Home from './src/components/Home';
import ForgetPassword from './src/components/ForgetPassword';
import { YellowBox } from 'react-native';
YellowBox.ignoreWarnings(['Warning: isMounted(...) is deprecated', 'Module RCTImageLoader']);
const App = createStackNavigator ({
Login: { screen: LoginForm },
Home: { screen: Home },
Signup: { screen: SignupForm },
ForgetPassword: { screen : ForgetPassword },
},
{
initialRouteName: 'Login',
});
export default App;
现在我将登录状态存储在
AsyncStorage
在我
LoginForm.js
这样地
.
.
AsyncStorage.setItem('isLoggedIn', 'true').then((a) => {
this.onLoginSuccess(responseData.user_id);
});
.
.
所以现在我想
initialRouteName
基于我的本地存储元素。
简单如果
isLoggedIn
是
true
然后
initialRouteName : Home
否则
initialRouteName : Login
很简单但不怎么用
my
App.JS
请帮忙:)