无法在本机库中打开抽屉

Unable to open drawer in native-base

控制台没有错误,没有什么可以指出的 wrong.All 例子似乎过时了,也许我使用了错误的版本?我正在使用 this 作为参考。

依赖关系:

"react-native-scripts": "1.14.0",
"expo": "^27.0.1",
"native-base": "^2.7.2",
"react": "16.3.1",
"react-native": "~0.55.2",
"react-navigation": "^2.12.1"

代码:

import React from "react";
import { createDrawerNavigator } from "react-navigation";
import { Text, Root, Container, Content, Header, Left, Button, Icon, Body, Title } from "native-base";
import StyleProvider from "theme/StyleProvider";

class HomeScreen extends React.Component {
  render() {
    return (
      <Container>
          <Header>
            <Left>
              <Button
                transparent
                onPress={() => this.props.navigation.navigate("DrawerOpen")}
              >
              <Icon name="menu" />
              </Button>
            </Left>
            <Body>
              <Title>HomeScreen</Title>
            </Body>
          </Header>
        <Content padder />
      </Container>
    );
  }
}

const SideBar = () => (
  <Container>
    <Content>
      <Text>Text</Text>
    </Content>
  </Container>
);

const HomeScreenRouter = createDrawerNavigator({
  Home: { screen: HomeScreen }
}, {
  contentComponent: props => <SideBar {...props} />
});

export default class App extends React.Component {
  render() {
    return (
      <StyleProvider>
        <Root>
          <HomeScreenRouter />
        </Root>
      </StyleProvider>
    );
  }
}

我不知道我还能提供什么。不确定这是一个错误,还是我做错了。

您只需使用

this.props.navigation.openDrawer();

而不是

this.props.navigation.navigate("DrawerOpen")