技巧2.0 嵌套组件router.push传参跳转的路由如何切换导航选中状态

#vuecli技巧2.0 嵌套组件router.push传参跳转的路由如何切换导航选中状态

来源:vue3demo1里goodlist.vue和gooddetail.vue

效果图示:

初始页面:

image-20220105174555787

点击导航项:

image-20220105174415958

需求:切换导航,导航样式的选中和不选中状态。

router-link

如果导航是用router-link写的,请看链接

router-push

如果路由是由router-push跳转的,那么怎么添加选中状态呢?

<!-- 路由跳转 第二种方式 router.push -->
	<ul>
		<li v-for="item,index in goodslist" @click="todetails(item.id)">
			{
  { item.name }}
		</li>
	</ul>
<script>
methods:{
    
		todetails(id){
    
			 this.$router.push({
     path:'/goodslist/goodsdetail/'+id})
		}  
	  }
</script>
第一种方式:js方式,利用v-if判断添加

在鼠标点击时,进入点击事件,记录下点击的是哪个id, 因为router.push给带了一个参数过来,再和li中的id比较,和哪个li的id一样了,就给哪个项添加样式即可。

<template>
	<h2>商品列表页面</h2>
	
	<ul>
		<!-- 选中状态第一步:为导航建立css   class="goodactive" 取决于给哪个li加上class-->
		<li  v-for="item,index in goodslist" @click="todetails(item.id)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值