React Router的目的是什么?

时间:2016-07-18 06:42:38

标签: node.js express reactjs url-routing react-router

鉴于我们可以在服务器上使用Express进行路由,为什么还需要客户端路由器? 有什么好处,它对SPA有意义吗?

2 个答案:

答案 0 :(得分:4)

需要客户端路由才能使您的应用程序与浏览器URL保持同步。

它主要用于单页应用程序,后端将通过XHR或AJAX调用用于RESTful API调用。

作为SPA用户可以为您的网址添加标记,当他们再次点击该网址时,您的应用应该加载该网页上的数据及其状态。

服务器端路由和客户端路由之间的主要区别:
 1.在服务器端路由中,您下载(提供)整个页面  2.在客户端路由以及整个页面中,您可以提供页面的特定部分,重用DOM,手动管理URL和历史状态。例如

www.something.com/page1/tab1会在用户界面中显示tab1 www.something.com/page1.tab2将在用户界面中显示tab2

通过这种方式,网址可以变得更加复杂,您可以拥有状态的子路由。

答案 1 :(得分:0)

需要客户端路由器的人需要进行状态管理。假设您有服务器呈现的页面,但有一些客户端小部件 - 例如日历,一组过滤器或折叠或打开侧边栏。路由器可帮助您以所需的确切状态初始化页面的这些组件。当然,您可以完成大部分工作以及我在服务器上命名的所有用例。但是在客户端处理这些通常要容易得多。您可以在服务器上更快地呈现它,但有时,尤其是在进行部分页面更新时,处理客户端会更便宜,更快。