2016-04-13 16 views
0

初期ルートではないコンポーネントのcomponentDitMount(この場合はMainHome)で発生するアラートがあります。しかし、初期(MySchedule)の別のコンポーネントがロードされると、アラートが表示されます。ルートは次のとおりです。ネイティブルーターのFluxコンポーネントに反応します.DidMountが間違ったコンポーネントで発生します。

export default class Example extends React.Component { 
    render() { 
     return <Router createReducer={reducerCreate}> 
      <Scene key="modal" component={Modal} > 
       <Scene key="root" hideNavBar={true}> 
        <Scene key="tabbar" component={NavigationDrawer}> 
         <Scene key="main" tabs={true} default="tab2" > 
          <Scene key="my_schedule" component={MySchedule} hideTabBar={true} navBar={NavBar} initial={true} /> 
          <Scene key="intro" component={Initial} hideTabBar={true} navBar={NavBar} /> 
          <Scene key="home" component={Home} hideTabBar={true} navBar={NavBar} /> 
          <Scene key="main_home" component={MainHome} hideTabBar={true} navBar={NavBar} /> 
         </Scene> 
        </Scene> 
       </Scene> 
       <Scene key="error" component={Error}/> 
      </Scene> 
     </Router>; 
    } 
} 

コンポーネントMainHomeのcomponentDidMountでは、アラートが発生します。

したがって、最初のコンポーネント(この場合はMySchedule)にアラートが表示されるはずですが、その理由がわかりません。あなたの助けに感謝します。

答えて

0

これはNavigationViewの動作方法です。

<View 
    style={this.props.style}> 
    {this.props.navigationState.children.map(this._renderScene)} 
    </View> 

ナビゲーションエクスペリメンタルが大きく変化しているため、これが変更される可能性があります。

https://github.com/facebook/react-native/issues/6579

関連する問題