Vue Router的动态路由匹配

用法参考官网手册动态路由匹配 | Vue Router (vuejs.org)

对于所有id不相同的用户,都使用User组件来渲染,可在路由路径中使用动态路径参数。

完整代码:

<!DOCTYPE html>
<html lang="zh">
<head>
	<meta charset="UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>
	<!--引入vue和vue-router,注意顺序和版本-->
	<script src="https://unpkg.com/vue@2/dist/vue.js"></script>
	<script src="https://unpkg.com/vue-router@3/dist/vue-router.js"></script>
</head>
<body>	
	<div id="app">	  
	  <p v-for="user in userlist">
		{{user.id}}--{{user.name}}----
		<<router-link :to="'/user/'+user.id">查看详情</router-link>
	  </p>		
		<router-view></router-view>	
	</div>
	<script type="text/javascript">
		//在组件中,匹配到的参数,会放到$route.params中
		var User = {
			template:'<div><h2>用户详情{{$route.params.id}}</h2></div>'
		}		
		const router = new VueRouter({
			routes:[
				//动态路径参数,以冒号开头,在url中匹配参数
				{path:'/user/:id',component:User}				
			]
		})
		var app = new Vue({
			el:'#app',
			data:{
				userlist:[
					{id:1,name:'张三'},
					{id:2,name:'李四'},
					{id:3,name:'王五'}
				]
			},			
			router:router,			
		}).$mount('#app')	
	</script>	
</body>
</html>

运行结果:

 点击张三和李四的查看详情,分别如下:   

 路径参数使用冒号:来标记。当匹配到一个路由时,参数值会被设置到this.$route.params。可以在一个路由中,设置多段路径参数,对应的值都会设置到$route.params中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值