React Native中的嵌套场景

我正在使用React-Native-Router-Flux(V. 3.37)来构建一个Android应用程序,我试图创建嵌套的场景。 使用DefaultRenderer元素,我已经能够创建一个嵌套的场景,但我希望有多个场景,并且能够浏览它们。

我的index.android.js看起来像这样(在一个路由器和场景键=“根”元素内)。

<Scene
   key="outer"
   component={Outer}
   title="Outer"
   initial
   hideNavBar
 >
    <Scene
      key="inner1"
      component={Inner1}
      title="Inner1"
      hideNavBar
    />
    <Scene
      key="inner2"
      component={Inner2}
      title="Inner2"
      hideNavBar
     />
</Scene>

外部组件是这样的:

<View style={styles.container}>
   <View style={styles.smallContainer}>
      <DefaultRenderer 
         navigationState={this.props.children[0]}
         onNavigate={this.props.onNavigate}
      />
   </View>
</View>

像这样,Inner1组件将正确地嵌套在Outer组件的smallContainer视图中。 但我不知道如何导航到Inner2。 如果我简单地将this.props.children [1]作为navigationState进行硬编码,它会告诉我“navigationState和onNavigate属性应该不为null”。

如果我在InnerPress中使用onPress = {Actions.inner2}来放置TouchableHighlight,它什么也不做。

我的直觉告诉我,答案在于Outer组件的DefaultRenderer元素中的onNavigate = {this.props.onNavigate}属性,但我一直无法找到任何关于该属性的信息。 我刚刚从React-Native-Router-Flux的示例文档中复制了DefaultRenderer元素。

我也研究过React-Native-Simple-Router,React-Native-Router和React-Router-Native,但是没有一个显然更好。

链接地址: http://www.djcxy.com/p/52131.html

上一篇: Nested Scenes in React Native with React

下一篇: React router best practices for nested navigation?