Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.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
Reactjs createDrawerNavigator和back按钮_Reactjs_React Native_React Navigation - Fatal编程技术网

Reactjs createDrawerNavigator和back按钮

Reactjs createDrawerNavigator和back按钮,reactjs,react-native,react-navigation,Reactjs,React Native,React Navigation,我们在应用程序中使用抽屉导航器来显示抽屉中的路线。我们的路线有成堆的页面,用户可以进入一个页面。例如: 家 家庭子女1 家庭子女2 关于 当用户转到HomeChild1或HomeChild2时,我们希望在标题中显示back按钮。我们不希望在每个页面的导航选项中添加后退按钮,如下所示: HomeScreen1.navigationOptions = ({ navigation }) => { const { state } = navigation; return {

我们在应用程序中使用抽屉导航器来显示抽屉中的路线。我们的路线有成堆的页面,用户可以进入一个页面。例如:

    • 家庭子女1
    • 家庭子女2
  • 关于
当用户转到HomeChild1或HomeChild2时,我们希望在标题中显示back按钮。我们不希望在每个页面的导航选项中添加后退按钮,如下所示:

HomeScreen1.navigationOptions = ({ navigation }) => {
  const { state } = navigation;
  return {
    title: `Home Screen 1`,
    headerLeft: (
      <Icon
        name="ios-arrow-back"
        type="ionicon"
        color="#FFF"
        underlayColor="transparent"
        iconStyle={{ paddingRight: 5 }}
        onPress={() => {
          navigation.navigate.goBack();
        }}
      />
    )
  };
}
HomeScreen1.navigationOptions=({navigation})=>{
const{state}=导航;
返回{
标题:`主屏幕1`,
左校长:(
{
navigation.navigate.goBack();
}}
/>
)
};
}
是否有一种方法可以将此配置置于全局级别—就像defaultNavigationOptions中一样

const defaultNavigationOptions = ({ navigation }) => {
  return {
    hideStatusBar: false,
    headerStyle: {
      backgroundColor: Colors.baseColor
    },
    headerTintColor: Colors.titleColor,
    headerBackImage: ( //this has no affect
      <Icon
        name="ios-arrow-back"
        type="Ionicons"
        style={{ color: "#D8025E", fontSize: 30, paddingHorizontal: 10 }}
      />
    ),
    headerLeft: (
      <Icon
        name="menu"
        size={30}
        style={{ marginStart: 25 }}
        color="#FFF"
        backgroundColor="#FFF"
        onPress={() => navigation.openDrawer()}
      />
    )
  };
};
constdefaultnavigationoptions=({navigation})=>{
返回{
希德斯塔塔斯巴:错,
头型:{
背景颜色:Colors.baseColor
},
HeaderIntColor:Colors.titleColor,
headerBackImage:(//这没有影响
),
左校长:(
navigation.openDrawer()}
/>
)
};
};

您可以使用导航路径值进行设置

defaultNavigationOptions:({navigation})=>({
标题左侧:()=>{
const{routeName}=navigation.state;
让我来;
如果(routeName==“HomeChild1”){
iconName=“ios箭头后退”;
}else if(routeName==“HomeChild2”){
iconName=“ios箭头后退”;
} 
....
返回(
navigation.goBack()}
/>
);
...

您可以使用导航路径值进行设置

defaultNavigationOptions:({navigation})=>({
标题左侧:()=>{
const{routeName}=navigation.state;
让我来;
如果(routeName==“HomeChild1”){
iconName=“ios箭头后退”;
}else if(routeName==“HomeChild2”){
iconName=“ios箭头后退”;
} 
....
返回(
navigation.goBack()}
/>
);
...