React Router 大部分的前端路由都是依赖于history.js的,它是一个独立的第三方js库,可以用来兼容在不同浏览器、不同环境下对历史记录的管理,拥有统一的API。
React Router 的工作原理是通过BrowserRouter、Route和Link组件来实现的。其中,BrowserRouter负责历史记录管理对象history初始化及向下传递,location变更监听。Route用于声明路由映射到应用程序的组件层,根据当前url,来与本身的path属性去匹配,如果匹配成功,那么就渲染Component属性中的组件。Link组件会渲染一个a标签,用于在页面上创建链接。