Skip to content

Instantly share code, notes, and snippets.

@dk0r
Forked from anonymous/0_DrawerContainer.jsx
Last active August 27, 2017 19:21
Show Gist options
  • Save dk0r/499605b44e3cfead5452081b74175330 to your computer and use it in GitHub Desktop.
Save dk0r/499605b44e3cfead5452081b74175330 to your computer and use it in GitHub Desktop.
export default class DrawerContainer extends Component {
render() {
drawerCheck = () => {
this.drawer
? this.drawer.openDrawer()
: alert('this.drawer is Undefined!')
}
return (
<DrawerLayout
ref={drawerLayout => (this.drawer = drawerLayout)}
{/*This renders the content inside of the drawer itself*/}
renderNavigationView={() =>
<Home {...this.props} drawerOpen={this.drawerCheck} />}
drawerWidth={300}
drawerPosition={DrawerLayout.positions.Left}
>
{/* This is the Home screen which contains the drawer open button */}
<Home {...this.props} drawerOpen={this.drawerCheck} />
</DrawerLayout>
)
}
}
export default class Home extends Component {
render() {
return (
<View style={styles.menu}>
<TeamMenu {...this.props} />
</View>
)
}
}
export default class TeamMenu extends Component {
render() {
return (
<DrawerButton size={35} {...this.props} />
)
}
}
export default class DrawerButton extends Component {
render() {
return (
<TouchableOpacity
onPress={() =>this.props.drawerOpen}
>
<Icon name="md-menu" size={this.props.size} />
</TouchableOpacity>
)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment