Vue路由跳转问题记录详解


Posted in Javascript onJune 15, 2017

最近项目上需要用Vue用来做app,在Vue中使用路由时遇到下面的问题。

路由设置如下:

{

path:'/tab',

component:Tab,

children:[{

path:'layoutList',

name:'LayoutList',

component:LayoutList

},{

path:'layoutView/:layoutId',

name:'LayoutView',

component:LayoutView

},{

path:'layoutDetail/:viewId',

name:'LayoutDetail',

component:LayoutDetail

}]

}

其中/tab是根地址,有3个子地址,3个子地址层级为:LayoutList => LayoutView => LayoutDetail

正常情况:假设当前路由为/tab/layoutList,需要跳转到LayoutView页面,可以通过router.push({path:'layoutView/'+item.id})

跳转后的路由为/tab/layoutView/1

Vue路由跳转问题记录详解 

Vue路由跳转问题记录详解    

当我想从LayoutView页面跳转到对应的LayoutDetail页面时:

情况一:(找不到页面)

跳转前地址:/tab/layoutView/1

跳转代码:router.push({path:'layoutDetail/'+item.id});

跳转后地址:/tab/layoutView/layoutDetail/27

情况二:(找不到页面)

跳转前地址:/tab/layoutView/1

跳转代码:router.push({path:'/layoutDetail/'+item.id});

跳转后地址:/layoutDetail/27

情况三:(找不到页面)

跳转前地址:/tab/layoutView/1

跳转代码:router.push({path:'tab/layoutDetail/'+item.id});

跳转后地址:/tab/layoutView/tab/layoutDetail/27

情况四:(页面正常显示)

跳转前地址:/tab/layoutView/1

跳转代码:router.push({path:'/tab/layoutDetail/'+item.id});

跳转后地址:/tab/layoutDetail/27

只有按照情况四的操作,才能正常显示出来页面。

vue路由会根据push的地址,如果地址不是/开头,会直接替换当前路由的最后一个/后的地址,

如果地址是/开头,会以push的地址作为绝对地址进行跳转。

另外我尝试还使用router.go({name:'LayoutDetail',params:{viewId:item.id}}),页面不会跳转且地址也不会改变。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
XRegExp 0.2: Now With Named Capture
Nov 30 Javascript
ext checkboxgroup 回填数据解决
Aug 21 Javascript
js动态创建、删除表格示例代码
Aug 07 Javascript
document.getElementById获取控件对象为空的解决方法
Nov 20 Javascript
javascript实现uploadify上传格式以及个数限制
Nov 23 Javascript
jquery根据一个值来选中select下的option实例代码
Aug 29 Javascript
JavaScript无阻塞加载和defer、async详解
Feb 26 Javascript
angular bootstrap timepicker TypeError提示怎么办
Jun 13 Javascript
three.js实现3D影院的原理的代码分析
Dec 18 Javascript
JS复杂判断的更优雅写法代码详解
Nov 07 Javascript
layui监听下拉选框选中值变化的方法(包含监听普通下拉选框)
Sep 24 Javascript
vue+iview使用树形控件的具体使用
Nov 02 Javascript
JS奇技之利用scroll来监听resize详解
Jun 15 #Javascript
package.json文件配置详解
Jun 15 #Javascript
一次围绕setTimeout的前端面试经验分享
Jun 15 #Javascript
利用JS对iframe父子(内外)页面进行操作的方法教程
Jun 15 #Javascript
使用Require.js封装原生js轮播图的实现代码
Jun 15 #Javascript
JavaScript实现选中文字提示新浪微博分享效果
Jun 15 #Javascript
详解vue跨组件通信的几种方法
Jun 15 #Javascript
You might like
三国漫画《火凤燎原》宣布动画化PV放出 预计2020年播出
2020/03/08 国漫
通过ICQ网关发送手机短信的PHP源程序
2006/10/09 PHP
php中的数组操作函数整理
2008/08/18 PHP
Yii实现MySQL多数据库和读写分离实例分析
2014/12/03 PHP
php+ajax实现文章自动保存的方法
2014/12/30 PHP
Avengerls vs KG BO3 第三场2.18
2021/03/10 DOTA
一个js写的日历(代码部分网摘)
2009/09/20 Javascript
JS日期和时间选择控件升级版(自写)
2013/08/02 Javascript
原生js编写设为首页兼容ie、火狐和谷歌
2014/06/05 Javascript
JavaScript静态类型检查工具FLOW简介
2015/01/06 Javascript
javascript控制图片播放的实现代码
2020/07/29 Javascript
jQuery Validate 校验多个相同name的方法
2017/05/18 jQuery
node作为中间服务层如何发送请求(发送请求的实现方法详解)
2018/01/02 Javascript
vue移动端实现红包雨效果
2020/06/23 Javascript
vue-router重定向和路由别名的使用讲解
2019/01/19 Javascript
JS实现灯泡开关特效
2020/03/30 Javascript
javascript实现智能手环时间显示
2020/09/18 Javascript
Python 流程控制实例代码
2009/09/25 Python
在Linux命令行终端中使用python的简单方法(推荐)
2017/01/23 Python
Python实现的tcp端口检测操作示例
2018/07/24 Python
Python代码打开本地.mp4格式文件的方法
2019/01/03 Python
HTML5 3D书本翻页动画的实现示例
2019/08/28 HTML / CSS
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
美国新娘礼品店:The Paisley Box
2020/09/08 全球购物
Brasty罗马尼亚:购买手表、香水、化妆品、珠宝
2020/04/21 全球购物
优秀应届生推荐信
2013/11/09 职场文书
集团公司党的群众路线教育实践活动工作总结
2014/03/03 职场文书
勤俭节约倡议书
2014/04/14 职场文书
学校组织向国旗敬礼活动方案(中小学适用)
2014/09/27 职场文书
学习群众路线的心得体会
2014/11/05 职场文书
电影圆明园观后感
2015/06/03 职场文书
八年级作文之一起的走过日子
2019/09/17 职场文书
JavaWeb 入门篇(3)ServletContext 详解 具体应用
2021/07/16 Java/Android
Ruby处理YAML和json数据
2022/04/18 Ruby
bose降噪耳机音能消除人声吗
2022/04/19 数码科技
css3手动实现pc端横向滚动
2022/06/21 HTML / CSS