react-router vs react-router-dom,何时使用一个或另一个?

reactjs React.js

JimGreen

2020-03-12

两者都有路由,链接等。何时使用一个或另一个?我真的很困惑在哪里使用每个。服务器端?客户端?

https://reacttraining.com/react-router/

在某些示例中,您需要传递历史记录,而在其他示例中则不需要。该怎么办?

<Router history={browserHistory}>

<Router>

何时使用一个或另一个非常令人困惑,任何帮助都值得赞赏。

第990篇《react-router vs react-router-dom,何时使用一个或另一个?》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

4个回答
A小胖 2020.03.12

在v4中,react-router导出核心组件和功能。react-router-dom导出DOM感知组件,例如<Link>(渲染<a>)和(与浏览器的window.history交互)。

react-router-dom重新导出react-router的所有导出,因此您只需要从react-router-dom项目中导入

Harry蛋蛋Eva 2020.03.12

react-router-dom是一个react-router优点:

猪猪Jim 2020.03.12

只需使用react-router-dom- react-router-dom全部导出react-routerGitHub答案上的链接(之间的区别是什么react-router-domreact-router)。

TonyPro 2020.03.12

react-router包含react-router-domreact-router-native之间的所有公共组件什么时候应该使用另一个?如果您在网络上,则react-router-dom应该具有所需的一切,因为它还可以导出所需的常用组件。如果您使用的是React Native,则出于相同的原因react-router-native应该具有所需的一切。因此,您可能永远不必直接从react-router导入任何内容就当你使用

<Router history={browserHistory}>

<Router>

在RRv4中,您无需传递浏览器历史记录,仅用于路由器的早期版本。

如果您仍然感到困惑,可以在此处查看每个包装的详细信息

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android