Add missing fields required for custom header use in v2.x.

See https://github.com/react-navigation/react-navigation/issues/4286
This commit is contained in:
Janeene Beeforth
2018-06-08 22:03:03 +10:00
parent ebadb7272e
commit f4ee3156b3
2 changed files with 22 additions and 0 deletions

View File

@@ -607,6 +607,7 @@ export interface NavigationScene {
isStale: boolean;
key: string;
route: NavigationRoute;
descriptor: NavigationDescriptor;
}
export interface NavigationTransitionProps {
@@ -1058,6 +1059,7 @@ export interface NavigationDescriptor<Params = NavigationParams> {
key: string;
state: NavigationLeafRoute<Params> | NavigationStateRoute<Params>;
navigation: NavigationScreenProp<any>;
options: NavigationScreenOptions;
getComponent: () => React.ComponentType;
}

View File

@@ -1,5 +1,6 @@
import * as React from 'react';
import {
Text,
TouchableOpacity,
View,
ViewStyle,
@@ -469,3 +470,22 @@ const BottomStack = createBottomTabNavigator({
}
}
});
const CustomHeaderStack = createStackNavigator({
Page1: { screen: Page1 },
Page2: { screen: Page2 }
},
{
navigationOptions: {
header: headerProps => {
const { scene } = headerProps;
const { options } = scene.descriptor;
const { title, headerStyle, headerTitleStyle } = options;
return (
<View style={headerStyle}>
<Text style={headerTitleStyle}>{title}</Text>
</View>
);
}
}
});