移动到其他屏幕时,reaction-navigation调用整个堆栈

时间:2018-08-27 11:00:36

标签: reactjs react-native react-redux react-navigation

我已经按照官方文档中的说明实施了react-navigation with redux。它工作正常,但是当我从第一屏幕转到第二屏幕时,它会刷新整个堆栈。

我有3个屏幕,分别称为LoginScreen,HomeScreen和HomeDetailScreen。

这是每种情况下的输出

初始载荷
输出:调用LoginScreen的构造方法

当我从“登录”转到“首页”时
输出:调用LoginScren的构造函数->调用HomeScreen的构造函数。

当我从家搬到家时详细信息
输出:调用LoginScren的构造函数->调用HomeScreen的构造函数->调用HomeDetailScreen的构造函数。

版本

react-navigation : "^2.12.1"
react-navigation-redux-helpers": "^2.0.5" 

1 个答案:

答案 0 :(得分:0)

找到了解决方案,实际上问题出在connect()上,我做了两次,这就是问题所在。

function ReduxNavigation() {
    const AppWithNavigationState = connect(mapStateToProps)(reduxifyNavigator(AppNavigation, "root"));
    return (        
        <AppWithNavigationState />
    )
}
//export default connect(mapStateToProps)(ReduxNavigation)
export default ReduxNavigation

如您在上面的代码中看到的,我已经绑定了导航,但是在导出它时我仍在做同样的事情。我已经注释了那部分代码,供其他用户理解。