继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

5.vue-router之什么是编程式路由

临摹微笑
关注TA
已关注
手记 294
粉丝 32
获赞 169

什么是编程式路由呢?就是通过写js代码来实现页面的跳转

1.$router.push('name'); 或者 $router.push({path: 'name'});

首先我们来讲讲简单的,上面两个方法记住,等效的。
① 还是在test.vue组件里面写个div并给它添加一个click跳转事件:

https://img4.mukewang.com/5d3191f40001d56f07230601.jpg

div上添加一个click点击事件

② 在view文件下新建一个goods.vue

https://img4.mukewang.com/5d3191f70001151407160567.jpg

goods.vue

③ 在router中引入这个goods组件

https://img4.mukewang.com/5d3191fb0001b84d07050607.jpg

路由

④ 打开路径为test的页面并点击

https://img3.mukewang.com/5d3191ff0001e1e407180348.jpg

localhost

⑤ ok,点一下我们就到goods页面了,实现了跟router-view标签一样的效果

https://img.mukewang.com/5d3192030001ccd807120324.jpg

goods页面

Ok,到这里我们已经实现了编程式路由的跳转了,接下来我们来试试路由携带参数跳转并接受参数。

2.$router.push({path: 'name?a=123'}) 或者 $router.push({path: 'name',query:{a:123}})这两种方式都可以

话不多说,看图你应该能看懂:

https://img3.mukewang.com/5d31920600011b3807200600.jpg

路由跳转并携带参数

② 在goods.vue中输入

提醒一句,这里的获取上一级页面传过来的参数是$route.query.goodsId,是$route不是$router

https://img.mukewang.com/5d319209000117b707210388.jpg

goods.vue

③ ok,我们就可以看到页面中显示上级页面传过来的参数了:

https://img2.mukewang.com/5d31920c0001d4f107210424.jpg

localhost

https://img4.mukewang.com/5d3192100001620207330413.jpg

goods.vue

3.$router.go();

这个就随意提一下,就是类似于history.go()的方法,括号里面填个1就是前进一级页面,-1就后退一级页面。差不多就是这样。



作者:Ewall_
链接:https://www.jianshu.com/p/81ed5a90bb10


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP