前端vue项目之路由监听

文章介绍了如何在Vue.js应用中处理父子路由,特别是在一个页面拥有公共部分和子路由展示区域的情况下。通过watch监听路由变化,动态调整页面结构,例如在路径/settings/team时显示父页面,而路径/settings/team/xxx时隐藏父页面内容并显示子路由内容。这种方式使得页面可以在团队设置和成员详情之间平滑切换。
摘要由CSDN通过智能技术生成

首先,一个页面可能会子路由,但是整个页面只有一部分是子路由展示区域,另外一部分则是公共区域,比如团队页面,一个团队有多个成员,对于团队来说,成员页面就算是团队页面的子路由,下面来看页面

假设红色部分为公共部分,绿色就是路由和子路由区域,紫色按钮是进入子路由页面,下面看子路由页面

 

 点击返回则回到父级路由页面,如何实现整个效果呢,首先父级路由的路径是settings/team,而子路由的路径是settings/team/xxx,路径不同,通过它作为标识绑定页面的结构上效果就可以实现了,那这边采用的方式是通过watch去监视路由的变化从而实现嵌入子路由的切换的方式,下面看代码:

<template v-if="!isHidden">
      //父页面
 </template>
<router-view v-else class="mt-5" />

通过标识isHdden绑定页面结构来切换页面

watch(
      () => root.$route,
      (val) => {
        const { path } = val;
        if (path === "/settings/team") {
          isHidden.value = false;
          navs.value = [root.$t('Team.Settings'), root.$t('Team.Team')];
        } else {
          isHidden.value = true;
        }
      }
    );

再通过watch来监视路由,从而实现页面能来回切换的效果,这就是监视路由的作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值