react-native - React native 导航选项卡注销功能

标签 react-native react-navigation

所以我有一个 react native 应用程序,并且我正在使用 react 导航选项卡导航器。我的问题是我也将注销功能放在选项卡导航器上,但每个选项卡都需要一个屏幕。现在我想要发生的是,当我单击“注销”时,它不必导航到任何地方,只需清除异步存储,然后重定向到登录屏幕。

提前致谢!

附注我是 react 原生新手。

最佳答案

我猜测您已经登录您的用户并使用 AsyncStorage( session )存储他的信息。

1)我对react-navigation或react-native-router-flux要做的是加载一个组件,该组件在componentWillMount()函数上将触发注销功能并将其重定向到您需要的场景。请参阅下面的示例:

import React, { Component } from 'react'
import { connect } from 'react-redux'
import { NavigationActions } from 'react-navigation'
import { logoutUser } from '../actions/index' //Action from Redux

class LogoutScene extends Component {
  componentWillMount() {
    this.props.logoutUser()
    NavigationActions.navigate({ routeName: someRouteName })
  }
}

const mapStateToProps = (state) => {}

export default connect(mapStateToProps, {logoutUser})(LogoutScene)

2) 我强烈建议您在项目中使用 Redux,因为虽然在项目开始时很困难且毫无意义,但从长远来看,会让您的生活变得如此轻松。为了做到这一点,您将需要比上面的示例更多的东西。我认为你应该检查这个https://medium.com/@jonlebensold/getting-started-with-react-native-redux-2b01408c0053

请告诉我这是否有意义

关于react-native - React native 导航选项卡注销功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46260287/

相关文章:

javascript - 查找过去 7 天内的平均事件数

react-native - 根据产品口味动态链接包,以一个代码库支持GMS和HMS

react-native - 为什么 navigation.closeDrawer 不是函数?

react-native - undefined 不是一个对象 options.routeGetIdList[action.payload.name]

reactjs - 将 StackNavigator 与 TabNavigator 集成

javascript - 在堆栈导航器 React 导航中隐藏 header

javascript - 创建 JSON 文件以 native 方式响应并加载到数据库中

javascript - 文本组件给定不同组件中的行数

react-native - 使用 Auth Token header react 原生图像,如何处理 401?

ios - React Navigation 从深度链接中获取参数不起作用