在 React Native 中向抽屉导航器添加注销按钮

问题描述

我有一个抽屉导航,我想添加一个退出按钮 我有一个带有注销按钮的屏幕 SettingsScreen 但我想删除这个屏幕并将这个按钮放在 drawerNavigation 上

如何调用菜单中的signOut函数,而不使用专门的注销屏幕?

App.js:

export default class App extends React.Component {
  constructor(props) {
    super(props);
    this.state = {

    };
  }

  render() 
    {
    return (
          <AppContainer />
    );
   }
}


const AppHomeDrawerNavigator = createDrawerNavigator({
  Home: {
    screen: Home,navigationoptions: {
      title: "Home",},SettingsScreen: {
    screen: SettingsScreen,navigationoptions: {
      title: "logout",});


const AppSwitchNavigator = createSwitchNavigator({
  AppHomeDrawerNavigator,});

const AppContainer = createAppContainer(AppSwitchNavigator);

SettingsScreen.js :

export default class SettingsScreen extends React.Component {
  signOut = async () => {
    try {
      await firebase.auth().signOut();
      this.props.navigation.navigate("WelcomeScreen");
    } catch (error) {
      alert("Unable to sign out right Now");
    }
  };

  render() {
    return (
      <CustomBackground>
            <TocuhableOpacity onPress={this.signOut}>
              <Text>Log out</Text>
            </TocuhableOpacity >
      </CustomBackground>
    );
  }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)