react router的path 和url有什么区别?

路由的处理组件可以从match属性上获得一个对象,该对象包含了关于路由是如何匹配当前url的信息。该对象的 path 和 url 属性有何区别。按文档所说,path是Route组件上声明的路径模式,处理组件可用来构建嵌套路由。url是当前路径中匹配path的部分,处理组件可用来构建嵌套链接。
我想知道什么时候path和url的值是不同的,能否举个例子?

阅读 8.8k
2 个回答

path是声明在Route上的路径规则,当某个路径符合这个规则时,显示路由处理组件。
url是满足path规则的某个具体的url。
比如,path是/path/*
对应的url可能是:path/anything/that/you/can/handle
所以,path可以用来帮助构建子级路由,url用来构建具体的跳转链接。

一个Route组件会带有下面截图的几个props
clipboard.png

clipboard.png

url是浏览器输入的地址,path是Route用来解析的。简单来说url可以改变,一个Route的path不能变。
例如修改地址route/test

clipboard.png

clipboard.png
具体源码可以参考: https://github.com/YutHelloWo...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏