繁体   English   中英

堆栈导航器和选项卡导航器无法响应本机问题

[英]Trouble with stack navigator and tab navigator for react native

我试图从选项卡导航器导航到堆栈导航器上的屏幕,但出现此错误:

在此处输入图片说明

在标签导航器中后,是否有特定的方法可以导航回堆栈导航器?

这是我使用onPress的地方:

onPress={() => this.onProfileButtonPressed()}

onProfileButtonPressed的函数如下所示:

constructor(props){
    super(props);
    this.state = {
        filteredCellArray: [],
        masterCellArray: []
    };
    this.onProfileButtonPressed = this.onProfileButtonPressed.bind(this);
}

onProfileButtonPressed = () => {
    this.props.navigation.navigate('Profile', this);
    console.log("Profile Button Pressed");
};

以下是带有堆栈和标签导航器的路由器:

const TabNav = TabNavigator({
  Profile:{
    screen: Profile,
    tabBarOptions: {
      showLabel: false
    }
  },
  Books:{
    screen: BookTab
  },
  Tutors:{
    screen: TutorTab
  },
  Furniture:{
    screen: FurnitureTab
  },
  Roommate:{
    screen: RoommateTab
  },
  Carpool:{
    screen: CarpoolTab
  }},
  {
    tabBarComponent: TabBarBottom,
    tabBarPosition: 'bottom',
    swipeEnabled: false,
    animationEnabled: false,
    lazy: true,
    initialRouteName: 'Books'
});

export const FeedStack = StackNavigator({
  SignIn: {
    screen: SignIn,
    navigationOptions: {
      title: "Login"
    }
  },
  SignUp: {
    screen: SignUp,
    navigationOptions: {
      title: "Create An Account"
    }
  },
  ForgotPassword: {
    screen: ForgotPassword,
    navigationOptions: {
      title: "Forgot Password"
    }
  },
  Profile: {
    screen: Profile,
    navigationOptions: {
      title: "Your Profile"
    }
  },
  TabNav: {
    screen: TabNav,
    navigationOptions: {
      title: "Home"
    }
  },
  listing: {
    screen: listing,
    navigationOptions: {
      title: "Listing"
    }
  }
})

我认为您的问题是,当前您的TabNavigatorStackNavigator 应该是其他方式了。

另外,由于您不想在所有视图中显示它(我想像在注册中一样),因此需要自定义它。 阅读有关隐藏TabBar的文档的更多规范。

但是带有制表符的基本逻辑是堆栈位于其中。

而且,如果将函数绑定到constructor函数内部的作用域,则应像下面这样引用它: onPress={this.onProfileButtonPressed}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM