react-router 4.0,react-router-dom和react-router-redux有什么区别?

Gor*_*ath 23 reactjs react-router react-router-dom

我正在反应应用程序中实现路由,但现在我混淆了react-router 4.0优于react-router-redux,我也对react-router-dom感到困惑,反应路由器的优点和缺点是什么? redux,react-router 4.0和react-router-dom?

And*_*yco 21

react-routerv4是base,building block.提供用于创建路由解决方案的API

react-router-dom包装好react-router.它应该在浏览器中运行.

react-router-redux提供所谓的"受控路由器",绑定redux存储.状态更改(导航)可以通过调度redux操作以及单击链接来控制.

你最好的选择是开始react-router-dom(react-router默认为你拉).

  • 现在我的困惑是为什么我应该使用react-redux-router,因为通过使用react router 4.0,我们可以使用this.props.history访问位置和历史信息。push('/')在哪种情况下必须使用react-redux-router? (2认同)

小智 12

很简单的解释!!!

  1. 无需react-router直接使用.
  2. react-router-dom是为"Web应用程序"而react-router-native制作的,用于"反应原生移动应用程序".
  3. react-router-dom在核心react-router-native 使用react-router.
  4. react-router-dom 与Redux 完美配合,无需使用react-router-redux.(由Dan abramov确认- Redux的创造者)
  5. 额外的好处react-router-redux是,您可以使路由器与应用程序状态保持同步.
  6. 简而言之 - 历史+商店(redux)→react-router-redux


Lyu*_*mir 6

  • 为什么我们应该使用react-redux-router只是为了维护商店中的路由状态,但在react-router 4.0中我们可以作为道具访问路由信息,那么react-redux-router的需求是什么? (2认同)