监听路由的变化

本文介绍了在Vue应用中如何监听路由参数的变化,包括组件内监听和全局监听,以及在路由变化时触发相应方法的策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

遇到一个问题,就是路由携带的参数变了,如何可以刷新页面,由此引出了可以监听路由的变化
1.组件内监听路由的方式:

 watch: {
  '$route.path': function (newVal, oldVal) {
   if (newVal === '/login') {
    console.log('欢迎进入登录页面');
   }
   if (newVal === '/register') {
    console.log('欢迎进入注册页面');
   }
  }
 }
watch:{
  '$route' (to,from) {
    console.log(to, from)
     // to , from 分别表示从哪跳转到哪,都是一个对象
     // to.path  ( 表示的是要跳转到的路由的地址 eg: /home );
    if (to.query.id !== from.query.id) {
		this.id = this.$route.query.id
		this.name = this.$route.query.name
	}
  }
},
// 监听新老路由变化信息
watch:{
    $route:{
      handler(newVal, oldval){
        console.log(newVal)
        console.log(oldval)
      },
      // 深度监听
      deep: true
    }
  }

2.监听路由变化执行相应的方法:

watch: {
      "$route": "getDetailData"
  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值