import * as React from 'react';
import { Button, Text, View } from 'react-native';
import {
createStackNavigator,
NavigationStackScreenProps,
} from 'react-navigation-stack';
import {
createDrawerNavigator,
DrawerContentComponentProps,
} from 'react-navigation-drawer';
import {
createBottomTabNavigator,
NavigationTabScreenProps,
} from 'react-navigation-tabs';
function Menu({ navigation }: DrawerContentComponentProps) {
return (
);
}
class Fake extends React.Component<
NavigationTabScreenProps | NavigationStackScreenProps
> {
static navigationOptions = ({
navigation,
}: NavigationTabScreenProps | NavigationStackScreenProps) => ({
title: navigation.getParam('title'),
});
render() {
return (
{this.props.navigation.getParam('title')}
);
}
}
const Tab = createBottomTabNavigator({
Home: { screen: Fake, params: { title: 'Home' } },
Other: { screen: Fake, params: { title: 'Other' } },
});
const Drawer = createDrawerNavigator(
{
TabScreen: {
screen: Tab,
},
},
{
contentComponent: props =>
,
navigationOptions: { title: 'Example' },
}
);
const App = createStackNavigator({
Drawer: { screen: Drawer },
Top: { screen: Fake, params: { title: 'Top' } },
});
export default App;