可以在分离的情况下使用React Navigation和Redux吗?

时间:2018-07-04 17:48:54

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

我试图编写一个同时使用redux和react native导航的react native应用程序。但是,我实际上并不希望将我的导航状态保存在redux中。所以我只想让它们彼此分开。我目前有StackNavigator,并且包装在连接中,然后由提供程序包装。

const mapStateToProps = state => state;
const mapDispatchToProps = dispatch => dispatch;

// need this Higher Order Component so you can pass properties through the root stack
const AppContainer = connect(mapStateToProps, mapDispatchToProps)(RootStack);

export default class App extends Component {
  render() {
    return (
        <Provider store={Store}>
          <AppContainer />
        </Provider>
    );
  }
}

可以实现吗?

1 个答案:

答案 0 :(得分:2)

是的,这是可能的,而且实际上是鼓励的。

react-navigation文档的报价:

  

有些人喜欢将其导航状态与其他应用程序状态存储在同一位置。在考虑这样做之前,请三思而后行,您很有可能不需要这样做!如果您不知道自己在做什么,则将React Navigation状态存储在自己的Redux存储中可能会给您带来非常困难的时光。

默认情况下,Redux和React-Navigation彼此无关,并且在其下一发行版(2018年秋季)中将完全不会记录或鼓励将React-Navigation集成到您的redux状态的支持。