から子ナビゲーターの小道具を取得し、私はナビゲーターに応じて表示/非表示することができるように彼の親コンテナからの私のナビゲーターのroute.idにアクセスしようとしているが、私は信じていリアクトネイティブコールバックは、親
をroute.id親から子への通信にコールバック関数が必要な場合は、ここで私の試みです。
var Home = require('./Home');
var Navigation = require('./Navigation');
class Parent extends Component {
render() {
return (
<View style={styles.appContainer}>
<Navigation getNavigator={this.getNavigator.bind(this)}/>
<Footer />
</View>
);
}
}
そして、ここでは、子コンポーネントが
あるvar _navigator;
class Navigation extends Component {
getNavigator(route){
return this.refs.navigator.push(route);
}
render() {
return (
<Navigator
style={styles.container}
ref={(navigator) => { this.navigator = navigator; }}
initialRoute={{
id: 'Home',
index:0,
}}
renderScene={this.navigatorRenderScene}
configureScene={(route) => {
if (route.sceneConfig) {
return route.sceneConfig;
}
return Navigator.SceneConfigs.PushFromRight;
}}
navigationBar={
<NavigationBar
style={{backgroundColor: '#f5f6f8'}}
routeMapper={NavigationBarRouteMapper} />
}
/>
);
}
navigatorRenderScene(route, navigator) {
_navigator = navigator;
switch (route.id) {
case 'Home':
return (<Home navigator={navigator} {...route.passProps} title="Home" />);
...
}
}
}