详解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 相关文章推荐
扩展js对象数组的OrderByAsc和OrderByDesc方法实现思路
May 17 Javascript
点评js异步加载的4种方式
Dec 22 Javascript
通过jsonp获取json数据实现AJAX跨域请求
Jan 22 Javascript
AngularJS点击添加样式、点击变色设置的实例代码
Jul 27 Javascript
vue计算属性和监听器实例解析
May 10 Javascript
React中使用async validator进行表单验证的实例代码
Aug 17 Javascript
angularJs中orderBy筛选以及filter过滤数据的方法
Sep 30 Javascript
小程序自定义日历效果
Dec 29 Javascript
Vue 后台管理类项目兼容IE9+的方法示例
Feb 20 Javascript
vue 项目 iOS WKWebView 加载
Apr 17 Javascript
在antd Form表单中select设置初始值操作
Nov 02 Javascript
夯基础之手撕javascript继承详解
Nov 09 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
Zend的MVC机制使用分析(一)
2013/05/02 PHP
学习php分页代码实例
2013/10/24 PHP
PHP实现微信网页授权开发教程
2016/01/19 PHP
Yii CGridView用法实例详解
2016/07/12 PHP
PHP高效获取远程图片尺寸和大小的实现方法
2017/10/20 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
2018/02/07 PHP
基于Jquery的仿Windows Aero弹出窗(漂亮的关闭按钮)
2010/09/28 Javascript
js选取多个或单个元素的实现代码(用class)
2012/08/22 Javascript
js限制textarea每行输入字符串长度的代码
2012/10/31 Javascript
jquery实现通用版鼠标经过淡入淡出效果
2014/06/15 Javascript
node.js 动态执行脚本
2016/06/02 Javascript
Bootstrap弹出带合法性检查的登录框实例代码【推荐】
2016/06/23 Javascript
jQuery tagsinput在h5邮件客户端中应用详解
2016/09/26 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
2016/12/28 Javascript
基于 Vue 的树形选择组件的示例代码
2017/08/18 Javascript
React如何利用相对于根目录进行引用组件详解
2017/10/09 Javascript
Node.js Buffer用法解读
2018/05/18 Javascript
react在安卓中输入框被手机键盘遮挡问题的解决方法
2018/09/03 Javascript
详解node字体压缩插件font-spider的用法
2018/09/28 Javascript
一个超级简单的python web程序
2014/09/11 Python
Python IDE PyCharm的基本快捷键和配置简介
2015/11/04 Python
Python实现二叉搜索树
2016/02/03 Python
python 合并多个excel中同名的sheet
2021/01/22 Python
美国巧克力喷泉品牌:Sephra
2019/05/05 全球购物
mysql的最长数据库名,表名,字段名可以是多长
2014/04/21 面试题
办公室文员工作自我评价
2013/12/01 职场文书
教师见习期自我鉴定
2014/04/28 职场文书
弘扬雷锋精神演讲稿
2014/05/10 职场文书
住宿生擅自离校检讨书
2014/09/22 职场文书
医务人员医德考评自我评价
2015/03/03 职场文书
2015中秋节慰问信范文
2015/03/23 职场文书
2015中秋节晚会开场白
2015/07/30 职场文书
2019入党申请书格式和范文
2019/06/25 职场文书
python实现批量移动文件
2021/04/05 Python
十大最强电系宝可梦,阿尔宙斯电系之一,第七被称为雷神
2022/03/18 日漫
JS前端轻量fabric.js系列物体基类
2022/08/05 Javascript