0

我是反应原生的新手。我想从侧面菜单导航到屏幕。我使用了 react-native-navigation Wix V2 库。如果有人可以帮助我举一个简单的例子,我将不胜感激。

4

2 回答 2

0

首先,您需要为 sideMenu 的中心堆栈设置 ID。例如:

Navigation.events().registerAppLaunchedListener(() => {
Navigation.setRoot({
    root: {
        sideMenu: {
            right: {
                component: {
                    name: 'SideMenu',
                },
            },
            center: {
                stack: {
                    id: 'STACK_ROOT_ID',
                    children: [
                        {
                            component: {
                                name: 'Login',
                            },
                        },
                    ],
                },
            },
        },
    },
});

然后在您的侧边菜单中,您可以像这样在 onPress 菜单上推送您的注册屏幕。像这样:

Navigation.push('STACK_ROOT_ID', {
    component: {
        name: 'REGISTERED_SCREEN_NAME',
        options: {
            sideMenu: {
                right: {
                    visible: false,
                },
            },
        },
    },
});
于 2020-10-12T06:24:39.880 回答
-1

有一个内置导航供 react native 使用,因为它提供了 react-native 导航(堆栈导航)。可以轻松地从侧面菜单进行导航

// 下面是创建侧边菜单的代码。

const RootDrawer = DrawerNavigator({
  demo: { screen: demo },
  demo2: { screen: demo2 },
  
}, {
  contentComponent: NavigationDrawer
})

// 下面是侧面菜单视图和为从屏幕导航提供的链接。

 <TouchableOpacity onPress = {() => this.props.navigation.navigate('demo')}>
          <View style = {{height: responsiveHeight(8), justifyContent:'center'}}>
            <Text style = {{fontSize: responsiveFontSize(2), color: 'black', fontFamily: 'Nunito-Regular', paddingLeft: 30 }} >My Cart</Text>
          </View>
        </TouchableOpacity>
        
        {this.state.customer &&
          <TouchableOpacity onPress = {() => this.props.navigation.navigate('demo1')}>
                  <View style = {{height: responsiveHeight(8), justifyContent:'center'}}>
                    <Text style = {{fontSize: responsiveFontSize(2), color: 'black', fontFamily: 'Nunito-Regular', paddingLeft: 30 }} >Account</Text>
                  </View>
          </TouchableOpacity>}

于 2019-02-09T12:38:43.370 回答