0

我在react-native應用程序中使用react-native-router-flux進行導航。 我在我的router.js文件得到這個 -使用模態和抽屜進行導航

render() { 
    return (
     <Router navigationBarStyle={styles.navBar} 
      titleStyle={styles.navBarTitle} 
     > 

      <Scene key="modal" component={Modal}> 
       <Scene key="drawer" component={Drawer} open={false} type="replace"> 

        <Scene key="home" component={Home} title="HOME" hideNavBar type="replace" /> 
        <Scene key="myorder" component={MyOrder} title="MY ORDERS" type="replace" /> 
        <Scene key="bookachef" component={BookAChef} title="BOOK A CHEF" type="replace" /> 
        <Scene key="offers" component={Offers} title="OFFERS" type="replace" /> 
        <Scene key="terms" component={Terms} title="TERMS & CONDITIONS" /> 
        <Scene key="mywishlist" component={MyWishlist} title="WISHLIST" type="replace" /> 
        <Scene key="myaddresses" component={MyAddresses} title="Addresses" type="replace" /> 
        <Scene key="faq" component={FAQ} title="FAQ" type="replace" /> 
        <Scene key="aboutus" component={AboutUs} title="About Us" type="replace" /> 

       </Scene> 
       <Scene key="auth" initial> 
        <Scene key="login" panHandlers={null} component={Login} title="Login" hideNavBar={true} /> 
        <Scene key="signup" panHandlers={null} component={SignUp} title="SignUp" hideNavBar={true} /> 
        <Scene key="terms" panHandlers={null} component={Terms} title="TERMS & CONDITIONS" /> 
       </Scene> 
       <Scene key="popUpImagePicker" panHandlers={null} component={PopUpImagePicker} title="PopUpImagePicker" hideNavBar={true} /> 
      </Scene> 

     </Router> 
    ); 
} 

現在,登錄後,我想有通常的流程,即與抽屜打開應用程序。問題是,我可以通過打開「主頁」屏幕

Actions.drawer()

但是,即使通過Actions.refresh({key: "drawer", open: true})或從屏幕滑動,我也無法打開抽屜。我做錯了什麼,我無法弄清楚。 我使用"react-native-router-flux": "^3.41.0"

回答

0

導航到登錄後的家庭場景,你可以打電話Actions.drawer(),但你在任何場景的drawer場景內降落前,從屏幕上是行不通的滑動,因您的Drawer組件尚未安裝到屏幕上。

至於無法將抽屜滑出,請嘗試移除抽屜場景中的type="replace"道具。

至於調用Actions.refresh({ key: 'drawer', open: true })沒有帶出抽屜組件問題,請確保您的Drawer組件,您正在設置open道具,你可以去看看RNRF的V3抽屜example,如果你忘了設置open道具,您的Actions.refresh會更新navigationState,但無法控制抽屜組件的打開/關閉狀態。