vue中路由跳转方式汇总,解决正确跳转不能显示页面问题。

首先写出自己所遇到的一些简单的坑,基础的问题如下:
自己所遇到的路由能跳转,但是不能正常显示的问题。

1,自己的路由路径写的有问题(能正常跳转,但是不能显示页面,可能是根据这个路由,找不到相应的文件页面,)。
2,没有正确在父页面中写出子页面显示的标签("<router-view>  </router-view>")
3,注册的路由中含有错误文件路径,找不到应该显示的页面。
    前端路由跳转是使用的哈希跳转,
vue中路由跳转的几种方式如下:
1、链接式跳转

使用router-link ,链接式跳转,最终显示在页面上的是a链接形式,效果也是相当于是a链接的效果,需要在跳转的地方直接引用,效果比较简单,也比较好理解和使用。

<router-link to="keyframes">跳转链接</router-link>
2、函数式跳转

这个包含的还是比较多的,自己所了解到的有以下几种,
先说明一下$router$route的区别
其中$router 是路由操作对象,只写对象,$route路由信息对象,只读对象
另外,$router对象进行路由跳转 $route 进行读取和接收参数

  • this.$router.replace({ name: ‘b’, params: { id: Id}});
    解释:是跳转到指定的url,但是这个方法不会向history里面添加新的记录,点击返回,会跳转到上上一个页面。上一个记录是不存在的。还可以携带参数进行跳转。

  • this.$router.go(n)
    相对于当前页面向前或向后跳转多少个页面,类似 window.history.go(n)。n可为正数可为负数。正数返回上一个页面,可以书写为负数,

在这里插入图片描述

  • this.$router.back()

this.$router.back():后退 ;

this.$router.back(0) 刷新;

this.$router.back(1):前进;

其中,this.$router.go(-1)与

this.$router.back()的区别:

this.$router.go(-1) // 是后退+刷新
this.$router.back() // 后退不刷新
  • this.$router.push()
1、想要导航到不同的URL,使用router.push()方法,这个方法会向history栈添加一个新纪录,
所以,当用户点击浏览器后退按钮时,会回到之前的URL,可以正常回退。
2、params传参,路径不能使用path,只能使用name,不然获取不到所传递的数据
this.$router.push({name:'dispath',patams:{paicheNo"obj.paicheNo}})
取数据:this.$route.params.paicheNo
params是路由的一部分,必须要在路由后面添加参数名
3、query传参
this.$router.push({path: '/transport/dispatch', query: {paicheNo: obj.paicheNo}})
取数据:this.$route.query.paicheNo
query是拼接在url后面的参数,没有也没关系。

文章参考了多个博客,总结的可能还有待完善,不足之处还请指出,可以随时交流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值