BrowserRouter 和 HashRouter 都可以实现前端路由的功能,区别是前者基于rul的pathname段,后者基于hash段。
前者:http://127.0.0.1:3000/article/num1
后者:http://127.0.0.1:3000/#/article/num1(不一定是这样,但#是少不了的)
这样的区别带来的直接问题就是当处于二级或多级路由状态时,刷新页面,会将当前路由发送到服务器(因为是pathname),而不会(因为是hash段)。
我们当然不希望前端路由被发送到后台。
路由搭建switch 的理解 就是只匹配 一个url 显示第一个 基本的路由搭建就是这样了
网友评论