react-native-navigation的迁移库

SideMenuCenterScreen.js 1008B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. const React = require('react');
  2. const Root = require('../components/Root');
  3. const Button = require('../components/Button')
  4. const Navigation = require('../services/Navigation');
  5. const {
  6. OPEN_LEFT_SIDE_MENU_BTN,
  7. OPEN_RIGHT_SIDE_MENU_BTN,
  8. CENTER_SCREEN_HEADER
  9. } = require('../testIDs');
  10. const Screens = require('./Screens');
  11. class SideMenuCenterScreen extends React.Component {
  12. static options() {
  13. return {
  14. topBar: {
  15. testID: CENTER_SCREEN_HEADER,
  16. title: {
  17. text: 'Center'
  18. }
  19. }
  20. };
  21. }
  22. render() {
  23. return (
  24. <Root componentId={this.props.componentId}>
  25. <Button label='Open Left' testID={OPEN_LEFT_SIDE_MENU_BTN} onPress={() => this.open('left')} />
  26. <Button label='Open Right' testID={OPEN_RIGHT_SIDE_MENU_BTN} onPress={() => this.open('right')} />
  27. </Root>
  28. );
  29. }
  30. open = (side) => Navigation.mergeOptions(this, {
  31. sideMenu: {
  32. [side]: { visible: true }
  33. }
  34. });
  35. }
  36. module.exports = SideMenuCenterScreen;