0

我已使用react-native-drawer創建了抽屜。抽屜查看包含ListView。無論何時單擊renderRow方法,都需要在抽屜本身內部顯示導航,而不是在Welcome屏幕堆棧的頂部。如何使用react-native-router-flux在react-native-drawer中進行導航

現在:Check the Screenshot here

預計: want to achieve something like this - Multi Level Menu

文件:組件/ welcome.js

render(){ 
    var settingPanel = <Setting closeDrawer={() => { 
    this.drawer.close(); 
    }} /> 
    return(
    <Drawer 
     ref={c => this.drawer = c} 
     type='overlay' 
     content={settingPanel} 
     ...> 
     <Home /> 
    </Drawer> 
); 
} 

文件:組件/ setting.js

render(){ 
    return(
    <ListView 
    dataSource={this.state.dataSource} 
    renderRow={this.renderRow.bind(this)} 
    /> 
); 
} 

renderRow (items) { 
    return(
     <View> 
      <Text style={styles.rowText}>{items.name}</Text> 
      <ImageButton onPress={Actions.trans()} img={fb} /> 
     </View> 
    ) 
}; 

它在Welcome屏幕頂部導航。我需要在抽屜本身上導航。我怎麼能做到這一點?

回答

0

從它的文檔here

選項打開抽屜 三個選項:

  1. 使用開放道具(控制模式):

    <Drawer 
        open={true} 
    
  2. 使用抽屜編號:

    // assuming ref is set up on the drawer as (ref) => this._drawer = ref 
    onPress={() => {this._drawer.open()}} 
    
  3. 使用上下文

    contextTypes = {drawer: React.PropTypes.object} 
    // later... 
    this.context.drawer.open() 
    

然後導航到使用反應本地路由器通量另一個組件,你可以添加一個TouchableOpacity組件insted的的<home />然後onPress添加actions.home() 和家庭是關鍵反應原生路由器通量場景組件

+0

我可以打開和關閉抽屜。這不是問題。 Plz見SS。我如何導航到抽屜內的另一個組件? – Balasubramanian

+0

使用'TochableOpacity'或任何按鈕組件我已更新答案 –