2024年最新Vue路由跳转的五种方式_vue路由跳转方式,面试官vo

最后

今天的文章可谓是积蓄了我这几年来的应聘和面试经历总结出来的经验,干货满满呀!如果你能够一直坚持看到这儿,那么首先我还是十分佩服你的毅力的。不过光是看完而不去付出行动,或者直接进入你的收藏夹里吃灰,那么我写这篇文章就没多大意义了。所以看完之后,还是多多行动起来吧!

可以非常负责地说,如果你能够坚持把我上面列举的内容都一个不拉地看完并且全部消化为自己的知识的话,那么你就至少已经达到了中级开发工程师以上的水平,进入大厂技术这块是基本没有什么问题的了。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  1. 可追溯

  2. 编程式

  3. router.push(…)//该方法的参数可以是一个字符串路径,或者一个描述地址的对象。

  4. 会向history栈添加新纪录

  5. 方式

    • name
      • route-name
      • params
    //params传参
    1.路由配置:
     name: 'home',
     path: '/home/:id'(或者path: '/home:id')
     2.跳转:
     this.$router.push({name:'home',params: {id:'1'}})
     注意:
     // 只能用 name匹配路由不能用path
     // params传参数(类似post) 路由配置 path: "/home/:id" 或者 path: "/home:id"否则刷新参数消失
    
    
    • path
      • router-path
      • query
    //不带参数
     this.$router.push('/home')
     this.$router.push({name:'home'})
     this.$router.push({path:'/home'})
    //query传参
    1.路由配置:
     name: 'home',
     path: '/home'
     2.跳转:
     this.$router.push({name:'home',query: {id:'1'}})
     this.$router.push({path:'/home',query: {id:'1'}})
     3.获取参数
     html取参: $route.query.id
     script取参: this.$route.query.id
    
    
    //直接通过path传参
    1.路由配置:
    name: 'home',
    path: '/home/:id'
    2.跳转:
    this.$router.push({path:'/home/123'}) 
    或者:
    this.$router.push('/home/123') 
    3.获取参数:
    this.$route.params.id
    
    

例子

<template>
  <div>
    <vant-button @click='gotoFn1' type="defaullt">
      push第二种方式
    <van-button>
  </div>
</template>


export default{
  name:'page',
  data(){
  
  },
  methods:{
   gotoFn1(){
      this.$router.push({
        path:'/page',
        query:{key:'我是传递的参数'}
      })
      //push第二种路由跳转方法
    }
  }
  
}


3. this.$router.replace() (用法同push)
  1. 不可追溯
  2. 它不会向history添加新纪录
  3. 方式
    • name

      • route-name
      • params
        • 例如
          this.$route.push({
              name:' Home',//路由的名称
              params:{
                  site:[],
                  bu:[]
                }
            })
      
      
        - 解释
      
      params:/router1/:site/:bu
      //这里的site、bu叫做params
      
      
    • path

      • router-path
      • query
        • 例如
      this.$router.push({
         path:'/home',
         query:{
          site:[],
          bu:[]
          }
      })
      
      

      -解释

      query:/router1?id=123
      这里的id叫做query
      
      

例子

<template>
  <div>
    <vant-button @click='gotoFn2' type="defaullt">
      replace第三种方式
    <van-button>
  </div>
</template>


export default{
  name:'page',
  data(){
  
  },
  methods:{
   gotoFn1(){
      this.$router.replace({
        path:'/page',
        query:{key:'我是传递的参数'}
      })
      //replace第三种路由跳转方法
    }
  }
  
}


4. this.$router.go(n)
  1. 相当于当前页面向前或向后跳转多少个页面,类似window.history.go(n)m可以为正数可为负数
  2. $router.go(-1)

例子

<template>
  <div>
    <vant-button @click='goBack' type="defaullt">
      第四种方式
    <van-button>
  </div>
</template>


export default{
  name:'page',
  data(){
  


## 最后

今天的文章可谓是积蓄了我这几年来的应聘和面试经历总结出来的经验,干货满满呀!如果你能够一直坚持看到这儿,那么首先我还是十分佩服你的毅力的。不过光是看完而不去付出行动,或者直接进入你的收藏夹里吃灰,那么我写这篇文章就没多大意义了。所以看完之后,还是多多行动起来吧!

可以非常负责地说,如果你能够坚持把我上面列举的内容都一个不拉地看完并且全部消化为自己的知识的话,那么你就至少已经达到了中级开发工程师以上的水平,进入大厂技术这块是基本没有什么问题的了。

**[开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】](https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0)**

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值