美文网首页
Vue动态路由的坑点

Vue动态路由的坑点

作者: 被代码耽误的裁缝 | 来源:发表于2022-07-19 17:22 被阅读0次

对于动态路由/user/:name,组件为 User

操作 1:从其他页面跳转到/user/duke
操作 2:从/user/duke跳转到/user/lemon
操作 3:从user/lemon跳转到/user/duke

操作 2 和 3 时组件User会被复用,组件的生命周期函数都不会被触发,这就意味着我们无法修改组件的状态及页面视图,Vue 官方提供了两种方法去监听route的变化

方法 1:使用watch监听

watch: {
    $route(to, from) {
      console.log("to =>", to);
      console.log("from =>", from);
      this.user = to.params.name;
      // 对路由变化作出响应...
    }
  },

方法 2:使用路由守卫

beforeRouteUpdate(to, from, next) {
    // react to route changes...
    // don't forget to call next()
  }

这两种方法效果其实是一样的,只会在操作 2 和 3 中触发,在操作 1 中无法触发。

方法 3:使用生命周期补全方法 1 | 2
操作 1 会触发挂载钩子函数,所以我们可以mounted+方法 1 | 2 覆盖操作 1、2、3 的场景

相关文章

  • Vue动态路由的坑点

    对于动态路由/user/:name,组件为 User 操作 1:从其他页面跳转到/user/duke操作 2:从/...

  • vue路由的介绍(二)--vue动态路由和get的传值

    vue动态路由和get的传值---->同属于路由的传参 1,vue动态路由: 动态路由的配置: ①,在配置路由时加...

  • Vue应用

    Vue项目 Vue结构 Vue项目打包与发布 Vue语法二 Vue网络请求 Vue路由 动态路由 编程式路由导航

  • 手写 Vue Router、手写响应式实现、虚拟 DOM 和 D

    Vue-Router 原理实现 一、Vue-Router 动态路由 二、Vue-Router 嵌套路由 三、Vue...

  • Vue路由

    一、Vue路由基础用法: 二、Vue路由配置的抽出 三、路由动态传值: 四、路由的跳转方式: 五、路由的hash模...

  • Vue常见面试题

    1.怎么定义vue-router的动态路由?怎么获取传递过来的动态参数? 何为动态路由?能够提供参数的路由即为动态...

  • vue中的路由

    vue中4中路由包含: 1、动态路由2、嵌套路由3、编程式路由4、命名式路由 1、动态路由 2、嵌套路由 3、编程...

  • 【转载】vue动态路由的实现思路及踩坑

    原文:Vue Router 实现动态路由和常见问题及解决方法 Vue项目实现动态路由的方式大体可分为两种: 前端将...

  • Vue路由及默认路由的跳转

    https://router.vuejs.org/ 代码实现如下 Vue动态路由get传参 vue路由结合请求数据...

  • Vue中的动态路由基本使用方式

    动态路由须知 一旦路由对象注入到了new Vue的示例中,那么 new Vue的示例 和 所有路由组件 的 dat...

网友评论

      本文标题:Vue动态路由的坑点

      本文链接:https://www.haomeiwen.com/subject/nluzmrtx.html