美文网首页让前端飞Web前端之路程序猿阵线联盟-汇总各类技术干货
5.vue-router之什么是编程式路由(手把手教你用vue+

5.vue-router之什么是编程式路由(手把手教你用vue+

作者: ComfyUI | 来源:发表于2018-05-26 10:08 被阅读255次

前言:编程式路由在我们的项目使用过程中最常用的的方法了。
GitHub:https://github.com/Ewall1106/mall

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

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

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

div上添加一个click点击事件

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

goods.vue

③ 在router中引入这个goods组件

路由

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

localhost

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

goods页面

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

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

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

路由跳转并携带参数

② 在goods.vue中输入

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

goods.vue

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

localhost goods.vue

3.$router.go();

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

参考学习
https://router.vuejs.org/zh-cn/
https://developer.mozilla.org/zh-CN/docs/Web/API/History
https://www.jianshu.com/p/3036137769da
https://www.jianshu.com/p/f499d9f64958

相关文章

网友评论

  • 月半小夜曲_:请问下大佬$router和$route的区别
    是不是router是全局路由
    route是当前路由
    月半小夜曲_:@Ewall_ 谢谢
    ComfyUI:@A月半小夜曲 你这样这样理解:$router是个方法(用它实现路由跳转);而$route是个对象(可以取出路由对象中的参数)
  • PGOne爱吃饺子:大佬 你好,请问那个路由的path 怎么配置的啊,总是不明白配置,谢谢
    ComfyUI:@PGOne爱吃饺子 router文件下》index.js文件里面配置的路由路径
    PGOne爱吃饺子:你好,那path里面为什么会有 ‘’/‘ 或者'/recommand' 这种格式的呢,是不是跟路径有关系啊,麻烦说一下谢谢啊
    ComfyUI:@PGOne爱吃饺子 就是写上你在router文件夹>index.js里配置的路由路径就可以了

本文标题:5.vue-router之什么是编程式路由(手把手教你用vue+

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