2016-04-13 11 views
0

Ich habe eine Warnung zu feuern auf einer Komponente componentDitMount, die KEINE anfängliche Route (MainHome in diesem Fall) ist. Wenn jedoch eine andere Komponente, die initial ist (MySchedule), geladen wird, wird die Warnung angezeigt. Die Routen sind:Native Router Flux-Komponente reagierenDidMount Fires in der falschen Komponente

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>; 
    } 
} 

Und in der Komponente MainHome componentDidMount der Alarm ausgelöst wird.

componentDidMount() { 
    Alert.alert(
     '“Welcome...', 
     [ 
      {text: 'OK'} 
     ] 
    ); 
} 

So in der Ausgangskomponente (mySchedule in diesem Fall) sollte die Warnung nicht angezeigt werden, aber es funktioniert und ich kann nicht herausfinden, warum. Ihre Hilfe würde sehr geschätzt werden.

Antwort

Verwandte Themen