在react-native中设置动态'initialRouteName'

时间:2018-06-15 05:38:27

标签: react-native react-navigation

问题很简单我知道有很多答案可用于同一个问题,但我设置了自己的Options All -Indexes DirectoryIndex index.php index.htm index.html RewriteEngine on RewriteBase / # Force HTTPS on the subdomains/subdirectories login or admin #RewriteCond %{HTTPS} off #RewriteCond %{HTTP_HOST} ^(login|admin)\. [NC] #RewriteCond %{REQUEST_URI} ^(login|admin)\. [NC,OR] #RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] # Force WWW if no subdomain is given RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$ RewriteCond %{HTTP_HOST} !^$ RewriteCond %{HTTPS}s ^on(s)| RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 文件,我尝试了几乎所有但都没有成功。

所以我的App.js看起来像这样

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); }); . . 。 如果initialRouteNameisLoggedIn,则为简单,然后trueinitialRouteName : Home

简单但不在initialRouteName : Login my

中使用此方法

请帮助:)

1 个答案:

答案 0 :(得分:3)

正如您所见here

  

如果您需要将initialRouteName设置为prop,那是因为在呈现应用程序导航之前,您需要异步提取一些数据。处理此问题的另一种方法是使用switchnavigator并在获取异步数据时显示一个屏幕,然后在必要时使用params导航到相应的初始路径。请参阅docs以获取完整示例。

这是一个开放的RFC

更新

看看here

你会找到更多描述!