详解vue 路由跳转四种方式 (带参数)


Posted in Javascript onApril 28, 2019

1.  router-link

1. 不带参数
 <router-link :to="{name:'home'}"> 
<router-link :to="{path:'/home'}"> //name,path都行, 建议用name 
// 注意:router-link中链接如果是'/'开始就是从根路由开始,如果开始不带'/',则从当前路由开始。
 2.带参数
 <router-link :to="{name:'home', params: {id:1}}"> 
// params传参数 (类似post)
// 路由配置 path: "/home/:id" 或者 path: "/home:id" 
// 不配置path ,第一次可请求,刷新页面id会消失
// 配置path,刷新页面id会保留
// html 取参 $route.params.id
// script 取参 this.$route.params.id
<router-link :to="{name:'home', query: {id:1}}"> 
// query传参数 (类似get,url后面会显示参数)
// 路由可不配置
// html 取参 $route.query.id
// script 取参 this.$route.query.id

2.  this.$router.push() (函数里面调用)

1. 不带参数
 this.$router.push('/home')
this.$router.push({name:'home'})
this.$router.push({path:'/home'})
2. query传参 
 this.$router.push({name:'home',query: {id:'1'}})
this.$router.push({path:'/home',query: {id:'1'}})
// html 取参 $route.query.id
// script 取参 this.$route.query.id
3. params传参
 this.$router.push({name:'home',params: {id:'1'}}) // 只能用 name
 
// 路由配置 path: "/home/:id" 或者 path: "/home:id" ,
// 不配置path ,第一次可请求,刷新页面id会消失
// 配置path,刷新页面id会保留
// html 取参 $route.params.id
// script 取参 this.$route.params.id
4. query和params区别
query类似 get, 跳转之后页面 url后面会拼接参数,类似?id=1, 非重要性的可以这样传, 密码之类还是用params刷新页面id还在
 params类似 post, 跳转之后页面 url后面不会拼接参数 , 但是刷新页面id 会消失

3.  this.$router.replace() (用法同上,push)

4.  this.$router.go(n) ()

this.$router.go(n)

向前或者向后跳转n个页面,n可为正整数或负整数

ps : 区别

this.$router.push

跳转到指定url路径,并想history栈中添加一个记录,点击后退会返回到上一个页面

this.$router.replace

跳转到指定url路径,但是history栈中不会有记录,点击返回会跳转到上上个页面 (就是直接替换了当前页面)

this.$router.go(n)

向前或者向后跳转n个页面,n可为正整数或负整数

总结

以上所述是小编给大家介绍的详解vue 路由跳转四种方式 (带参数),希望对大家有所帮助,如果大家有人疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
IE6下JS动态设置图片src地址问题
Jan 08 Javascript
ASP.NET jQuery 实例18 通过使用jQuery validation插件校验DropDownList
Feb 03 Javascript
javascript淡入淡出效果的实现思路
Mar 31 Javascript
js动态生成指定行数的表格
Jul 11 Javascript
javascript面向对象程序设计(一)
Jan 29 Javascript
jQuery移动web开发之页面跳转和加载外部页面的实现
Dec 04 Javascript
vueJS简单的点击显示与隐藏的效果【实现代码】
May 03 Javascript
js读取json文件片段中的数据实例
Mar 09 Javascript
JavaScript实现打地鼠小游戏
Apr 23 Javascript
Vue AST源码解析第一篇
Jul 19 Javascript
jQuery+css last-child实现选择最后一个子元素操作示例
Dec 10 jQuery
JS判断浏览器类型与操作系统的方法分析
Apr 30 Javascript
使用vue完成微信公众号网页小记(推荐)
Apr 28 #Javascript
详解VUE项目中安装和使用vant组件
Apr 28 #Javascript
详解JavaScript对数组操作(添加/删除/截取/排序/倒序)
Apr 28 #Javascript
vue slot与传参实例代码讲解
Apr 28 #Javascript
Vue项目从webpack3.x升级webpack4不完全指南
Apr 28 #Javascript
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 #jQuery
vue项目中在外部js文件中直接调用vue实例的方法比如说this
Apr 28 #Javascript
You might like
再说下636单管机
2021/03/02 无线电
PHP下用rmdir实现删除目录的三种方法小结
2008/04/20 PHP
php中$this-&amp;gt;含义分析
2009/11/29 PHP
php简单开启gzip压缩方法(zlib.output_compression)
2013/04/13 PHP
php的$_FILES的临时储存文件与回收机制实测过程
2013/07/12 PHP
PHP+javascript制作带提示的验证码源码分享
2014/05/28 PHP
浅谈php错误提示及查错方法
2015/07/14 PHP
PHP开发API接口签名生成及验证操作示例
2020/05/27 PHP
动态调用CSS文件的JS代码
2010/07/29 Javascript
Jquery拖拽并简单保存的实现代码
2010/11/28 Javascript
原生javascript获取元素样式属性值的方法
2010/12/25 Javascript
javascript一些实用技巧小结
2011/03/18 Javascript
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
用JS实现一个TreeMenu效果分享
2011/08/28 Javascript
jquery 3D 标签云示例代码
2014/06/12 Javascript
js创建表单元素并使用submit进行提交
2014/08/14 Javascript
IE下支持文本框和密码框placeholder效果的JQuery插件分享
2015/01/31 Javascript
JQuery实现展开关闭层的方法
2015/02/17 Javascript
快速学习AngularJs HTTP响应拦截器
2015/12/31 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
javascript的document中的动态添加标签实现方法
2016/10/24 Javascript
详解Python中logging日志模块在多进程环境下的使用
2016/12/26 Javascript
easyui 中的datagrid跨页勾选问题的实现方法
2017/01/18 Javascript
React实现阿里云OSS上传文件的示例
2020/08/10 Javascript
JavaScript实现鼠标经过表格某行时此行变色
2020/11/20 Javascript
python flask 多对多表查询功能
2017/06/25 Python
Jacobi迭代算法的Python实现详解
2019/06/29 Python
python 中的paramiko模块简介及安装过程
2020/02/29 Python
施华洛世奇巴西官网:SWAROVSKI巴西
2019/12/03 全球购物
我的动漫时代的创业计划书范文
2014/01/27 职场文书
《一件运动衫》教学反思
2014/02/19 职场文书
2015年安全保卫工作总结
2015/05/14 职场文书
管辖权异议上诉状
2015/05/23 职场文书
2016年党员公开承诺书范文
2016/03/24 职场文书
2019朋友新婚祝福语精选
2019/10/10 职场文书
Vue如何实现组件间通信
2021/05/15 Vue.js