使用redux管理导航状态有什么好处?

问题描述 投票:0回答:2

例如,如果您使用的是诸如react-navigation之类的导航库,那么如果react-navigation已经管理了它,那么使用redux来管理navigation state的麻烦又有什么意义呢?似乎必然会使设置复杂化。

例如,浏览屏幕看起来更痛苦:

navigate = () => {
  const navigateScreens = NavigationActions.navigate({
    routeName: "OtherScreen",
    params: {someProperty: "someValue"}
  })
  this.props.navigation.dispatch(navigateScreens);
}:

而不只是反应导航的:

this.props.navigation.navigate("OtherScreen")

ReactNavigation文档专门说:“我也可以将导航状态存储在Redux中吗?这在技术上是可行的,但是我们不建议这样做-用脚射击,放慢速度/破坏应用程序太容易了。我们鼓励您可以将其留给React Navigation来管理导航状态。”

所以进行所有这些额外的工作一定会带来巨大的好处...对吗? Redux管理导航状态的一些实际用例/场景是什么,值得进行权衡并忽略react-nav文档?

react-native redux react-redux react-navigation
2个回答
2
投票
仅单独管理路线可能不值得实施。如果您有大量全局数据和大型组件树,则Redux设置非常值得。但是,如果您只是尝试管理一个或什至几个数据点,则最好采用一种更简单的手动将道具穿过树的策略。

0
投票
除了维护历史记录或后退按钮android功能在redux中存储导航状态没有好处!
© www.soinside.com 2019 - 2024. All rights reserved.