2017-06-15 16 views
1

スタックナビゲータをReact-navigationから特定の画面にレンダリングするにはどうすればよいですか? 最初の読み込み時にStackNavigatorをその画面にレンダリングするための小道具としてスクリーン名を渡すことはできますか?React-navigation StackNavigatorを特定の画面にレンダリング

UPDATE: 私はスタックナビゲーターに小道具を渡すことによってそれを解決して、条件付きでintialRouteNameを設定:

const Main = RootNavigator(userLoggedIn); 

、直接ので<Main /> 代わりRootNavigatorのようにメインをレンダリングします。ナビゲーターコード内部次に

:あなたはStackNavigator、第二のパラメータを初期化

export const RootNavigator = (userLoggedIn= false) => { 
    return StackNavigator(
    { 
     LoggedIn: { 
     screen: LoggedIn, 
     }, 
     LoggedOut: { 
     screen: LoggedOut, 
     } 
    },{ 
     initialRouteName: userLoggedIn? "LoggedIn" : "LoggedOut" 
    } 
); 
}; 
+0

例とドキュメントをチェックするhttps://reactnavigation.org – TomTom

+0

役に立たない答え。 – jasan

+0

コードに関する詳細を追加する必要があります。これはどこで決定されていますか?あなたの小道具/状態を受け取っているのは何ですか?これらの異なる画面は別々のコンポーネントですか? Reduxまたは他の州のコンテナを使用していますか?これを処理するさまざまな方法がありますので、より具体的にする必要があります(https://stackoverflow.com/help/how-to-ask)。 –

答えて

0

はい、オプションです。だからあなたはできる:

StackNavigator({ <Your-Routes> }, { initialRouteName: 'MyFirstPage' }); 
+0

StackNavigatorでIntialRouteNameを設定できることはすでに知っていますが、いくつかの小道具に応じてintialRoutename Dynamicを作成します。私がログインしている場合、私はナビゲータにscreenAを表示したいと思っています。 – jasan

関連する問題