Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native 徽标未重定向到主页_React Native - Fatal编程技术网

React native 徽标未重定向到主页

React native 徽标未重定向到主页,react-native,React Native,我最近在我的应用程序中实现了一个抽屉菜单,上面有一个徽标。我想标志是可点击的,这样可以链接回主页 我尝试使用React Navigation中的createDrawerNavigation组件。我认为这个错误与导出这两个常量不好有关,但我不熟悉正确的语法 /*/ Drawer Menu /*/ const navigator = createDrawerNavigator( { Page1: Lander, Page2: Lander, Page3: Lander,

我最近在我的应用程序中实现了一个抽屉菜单,上面有一个徽标。我想标志是可点击的,这样可以链接回主页

我尝试使用React Navigation中的createDrawerNavigation组件。我认为这个错误与导出这两个常量不好有关,但我不熟悉正确的语法

/*/ Drawer Menu /*/

const navigator = createDrawerNavigator(
  {
    Page1: Lander,
    Page2: Lander,
    Page3: Lander,
    Page4: Lander,
  },

  {
    contentComponent: (props) => ( 
      <SafeAreaView> 
        <Menu {...props}/> 
      </SafeAreaView> 
    )

  },
);
/*/ End of Drawer Menu /*/


/*/ Navigator Constants /*/
const AppNavigator = createStackNavigator({
  Home: {
    screen: Lander,
  },
},

  {
    initialRouteName: 'Home',
    headerMode: 'none',

});

export default createAppContainer(navigator, AppNavigator);

/*/ End of Navigator Constants /*/


/*/Drawer Menu with the Drawer Items and Logo inside /*/

export default class Menu extends React.Component {
    render() {
        return(
          <TouchableWithoutFeedback  onPress={() => this.props.navigation.navigate('Home')}>
            <Image source={require('../../Images/picture.png')} style = {styles.icon}/>
          </TouchableWithoutFeedback>


        <ScrollView style= {{backgroundColor: 'black', paddingLeft: '5%',}}>
          <DrawerItems {...this.props}  activeTintColor='#2196f3' activeBackgroundColor='rgba(0, 0, 0, .04)' inactiveTintColor='rgba(0, 0, 0, .87)' inactiveBackgroundColor='transparent' style={{backgroundColor: '#000000'}} labelStyle={{color: '#ffffff', fontSize:30,}}   />
        </ScrollView>

        )
    }
}
/*/抽屉菜单/*/
const navigator=createDrawerNavigator(
{
第1页:着陆器,
第2页:着陆器,
第3页:着陆器,
第4页:着陆器,
},
{
contentComponent:(道具)=>(
)
},
);
/*/抽屉末端菜单/*/
/*/导航常量/*/
const AppNavigator=createStackNavigator({
主页:{
屏幕:着陆器,
},
},
{
initialRouteName:“主页”,
headerMode:“无”,
});
导出默认createAppContainer(navigator、AppNavigator);
/*/导航器常量结束/*/
/*/抽屉菜单,内有抽屉项目和徽标/*/
导出默认类菜单扩展了React.Component{
render(){
返回(
this.props.navigation.navigate('Home')}>
)
}
}

当我单击徽标时,我没有收到错误消息,但是,它不会重定向到任何地方。

似乎您创建AppContainer的方式不对,如果您不需要两个单独的StackNavigator,一个简单的方法是在抽屉内创建主StackNavigator

    /*/ Drawer Menu /*/

const navigator = createDrawerNavigator(
  {
    Home: HomeStackNavigator
    Page1: Lander,
    Page2: Lander,
    Page3: Lander,
    Page4: Lander,
  },

  {
    contentComponent: (props) => ( 
      <SafeAreaView> 
        <Menu {...props}/> 
      </SafeAreaView> 
    )

  },
);
/*/ End of Drawer Menu /*/


/*/ Navigator Constants /*/
const HomeStackNavigator = createStackNavigator({
  Home: {
    screen: Lander,
  },
},

  {
    initialRouteName: 'Home',
    headerMode: 'none',

});

 export default createAppContainer(navigator);
/*/抽屉菜单/*/
const navigator=createDrawerNavigator(
{
主页:HomeStackNavigator
第1页:着陆器,
第2页:着陆器,
第3页:着陆器,
第4页:着陆器,
},
{
contentComponent:(道具)=>(
)
},
);
/*/抽屉末端菜单/*/
/*/导航常量/*/
const HomeStackNavigator=createStackNavigator({
主页:{
屏幕:着陆器,
},
},
{
initialRouteName:“主页”,
headerMode:“无”,
});
导出默认createAppContainer(导航器);

试试这个.props.navigation.navigate('AppNavigator')它似乎不起作用,这有助于消除我对此的大部分困惑。然而,为了制作一个可点击的徽标,我需要单独设计一个抽屉项目。你知道我怎么做吗?对不起,我不太明白你的问题,如果你使用contentComponent,你需要自己创建每个菜单项