路由注册
{
path: `/score/:id`,
component: score,
name: "score",
}
<router-link :to="`/score/123`">
router.push({name: "score",params: { id: 123,age:99 },});
地址栏 http://localhost:3000/score/123 age不会显示在地址栏
获取 route.params.id route.params.age
id刷新不丢失 age丢失
<router-link :to="{path:`/score`,query:{id:123}}">
router.push({name: "score",query: { id: 123 }});
地址栏 http://localhost:3000/score?id=123
获取 route.query.id
刷新不丢失
<router-link :to="{path:`/score/321`,query:{id:123}}">
router.push({name: "/score/321",query: { id: 123 },});
地址栏 http://localhost:3000/score/321?id=123
获取?前面的id route.params.id 后面的route.query.id
刷新不丢失
⭐只有地址栏的信息不会在刷新时丢失
使用name时,params,query都生效
query在地址栏展现形式是 path?key=value&key2=value2 刷新不会丢失
params在地址栏展现形式是 有两种情况
1.路由注册时为path/:id 传参时 id必传 params:{id:12,age:99} age不会展示到地址栏且刷新会丢失,id会展示到地址栏,并不会丢失
2.路由注册时为path 所有params都不会显示到地址栏,刷新会丢失
path query都生效,params不生效,直接patyh/${id}即可
网友评论