mirror of
https://gitlab.com/wheres-the-tp/ui-mobile.git
synced 2026-01-25 09:34:56 -06:00
Fix wonky state with drawer
This commit is contained in:
parent
146f6d171f
commit
13d523e9e4
1 changed files with 39 additions and 33 deletions
72
js/App.js
72
js/App.js
|
|
@ -16,44 +16,50 @@ import Drawer from 'react-native-drawer';
|
|||
setObservableConfig(rxjsconfig);
|
||||
|
||||
type State = {
|
||||
drawerOpen: boolean,
|
||||
drawerOpen: boolean,
|
||||
};
|
||||
|
||||
export default class App extends Component {
|
||||
state = { drawerOpen: false };
|
||||
state = { drawerOpen: false };
|
||||
|
||||
state: State;
|
||||
state: State;
|
||||
|
||||
toggleDrawer = () => {
|
||||
this.setState(({ drawerOpen }) => ({ drawerOpen: !drawerOpen }));
|
||||
};
|
||||
toggleDrawer = () => {
|
||||
this.setState(({ drawerOpen }) => ({ drawerOpen: !drawerOpen }));
|
||||
};
|
||||
|
||||
closeDrawer = () => {
|
||||
this.setState({ drawerOpen: false });
|
||||
};
|
||||
closeDrawer = () => {
|
||||
this.setState({ drawerOpen: false });
|
||||
};
|
||||
|
||||
render() {
|
||||
const { drawerOpen } = this.state;
|
||||
return (
|
||||
<NativeRouter>
|
||||
<ThemeProvider uiTheme={theme}>
|
||||
<Drawer
|
||||
ref={ref => this._drawer = ref}
|
||||
type="overlay"
|
||||
open={drawerOpen}
|
||||
openDrawerOffset={100}
|
||||
content={<DrawerMenu onCloseDrawer={this.closeDrawer} />}
|
||||
>
|
||||
<View style={theme.page.container}>
|
||||
<TopToolbar toggleSideMenu={this.toggleDrawer} />
|
||||
<Redirect from="/" to="/list/food" />
|
||||
<Route path="/list/:type" component={List} />
|
||||
<Route path="/foodItem/:id" component={FoodItemDetail} />
|
||||
<Route path="/place/:id" component={PlaceDetail} />
|
||||
</View>
|
||||
</Drawer>
|
||||
</ThemeProvider>
|
||||
</NativeRouter>
|
||||
);
|
||||
}
|
||||
openDrawer = () => {
|
||||
this.setState({ drawerOpen: true });
|
||||
};
|
||||
|
||||
render() {
|
||||
const { drawerOpen } = this.state;
|
||||
return (
|
||||
<NativeRouter>
|
||||
<ThemeProvider uiTheme={theme}>
|
||||
<Drawer
|
||||
ref={ref => (this._drawer = ref)}
|
||||
type="overlay"
|
||||
open={drawerOpen}
|
||||
onOpen={this.openDrawer}
|
||||
onClose={this.closeDrawer}
|
||||
openDrawerOffset={100}
|
||||
content={<DrawerMenu onCloseDrawer={this.closeDrawer} />}
|
||||
>
|
||||
<View style={theme.page.container}>
|
||||
<TopToolbar toggleSideMenu={this.toggleDrawer} />
|
||||
<Redirect from="/" to="/list/food" />
|
||||
<Route path="/list/:type" component={List} />
|
||||
<Route path="/foodItem/:id" component={FoodItemDetail} />
|
||||
<Route path="/place/:id" component={PlaceDetail} />
|
||||
</View>
|
||||
</Drawer>
|
||||
</ThemeProvider>
|
||||
</NativeRouter>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue