2017-11-03 20 views
0

ナビゲーション画面でリアクションナビゲーションを使用しています。私はネストしたナビゲーション、TabNavigatorStackNavigatorを使用しました。現在の画面でスワイプされていることを他の画面に変更するにはどうすればいいですか?Reduxを使わずに画面内のstateを変更してください。私はそれが画面のrouteNameを取得し、this.props.navigation.state.routeNameを取得しようとするが、どのようにrouteNameナビゲーションを反応にスワイプジェスチャーを追跡する方法がない現状ではrouteNameが変更された場合のリアクションナビゲーションのトリガー

const mainNav = TabNavigator({ 
    Home: { 
    screen: HomeScreen, 
    }, 
    Live: { 
    screen: LiveScreen, 
    }, 
    Radio: { 
    screen: RadioScreen, 
    }, 
}); 

export const mainStack = StackNavigator({ 
    Home: { screen: mainNav}, 
    Content: { screen: ContentScreen }, 
}); 

答えて

0

を変更している場合に発生させます。あなたはこれを達成するためにハッキングを使うことができます。しかし、それらのほとんどすべてがreduxと反応ナビゲーションをフックする必要があります。

あなたの画面を追跡する最良の方法は、react reduxを使用して状態をappStateでフックすることです。これにより、ナビゲーションのコントロールを最大限にすることができます。また、レビュックスアクションを使用して、アプリ内の他のビジネス用のものと一緒にナビゲーションを制御することもできます。あなたは

https://github.com/react-community/react-navigation/issues/1063

+0

を参照することができreact navigation with redux

を使用する

最も簡単な方法こんにちは、私は実際にどのようにReduxの仕事を理解するカント。その他の例は? –

関連する問題