详解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 相关文章推荐
javascript 关于# 和 void的区别分析
Oct 26 Javascript
浅析JavaScript中的事件机制
Jun 04 Javascript
JavaScript中setUTCFullYear()方法的使用简介
Jun 12 Javascript
javascript for-in有序遍历json数据并探讨各个浏览器差异
Nov 30 Javascript
Javascript实现Array和String互转换的方法
Dec 21 Javascript
Javascript中的arguments对象
Jun 20 Javascript
jQuery的Cookie封装,与PHP交互的简单实现
Oct 05 Javascript
Vue.directive自定义指令的使用详解
Mar 10 Javascript
vue.js实现价格格式化的方法
May 23 Javascript
ng-alain表单使用方式详解
Jul 10 Javascript
vue css 引入asstes中的图片无法显示的四种解决方法
Mar 16 Javascript
jquery检测上传文件大小示例
Apr 26 jQuery
使用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
使用sockets:从新闻组中获取文章(三)
2006/10/09 PHP
怎么样可以把 phpinfo()屏蔽掉?
2006/11/24 PHP
ThinkPHP的模版中调用session数据的方法
2014/07/01 PHP
php 函数使用可变数量的参数方法
2017/05/02 PHP
laravel解决迁移文件一次删除创建字段报错的问题
2019/10/24 PHP
jQuery select控制插件
2009/08/17 Javascript
jquery下json数组的操作实现代码
2010/08/09 Javascript
JS中使用Array函数shift和pop创建可忽略参数的例子
2014/05/28 Javascript
AngularJS基础教程之简单介绍
2015/09/27 Javascript
bootstrap3中container与container_fluid外层容器的区别讲解
2017/12/04 Javascript
jQuery进阶实践之利用最优雅的方式如何写ajax请求
2017/12/20 jQuery
谈谈React中的Render Props模式
2018/12/06 Javascript
详解JavaScript中的强制类型转换
2019/04/15 Javascript
如何给element添加一个抽屉组件的方法步骤
2019/07/14 Javascript
Layui表格行工具事件与数据回填方法
2019/09/13 Javascript
js实现图片粘贴到网页
2019/12/06 Javascript
vue实现数据控制视图的原理解析
2020/01/07 Javascript
如何使用three.js 制作一个三维的推箱子游戏
2020/07/29 Javascript
jQuery实现动态操作table行
2020/11/23 jQuery
Python urls.py的三种配置写法实例详解
2017/04/28 Python
python之pyqt5通过按钮改变Label的背景颜色方法
2019/06/13 Python
python中比较两个列表的实例方法
2019/07/04 Python
python如何给字典的键对应的值为字典项的字典赋值
2019/07/05 Python
python如何实现异步调用函数执行
2019/07/08 Python
基于python2.7实现图形密码生成器的实例代码
2019/11/05 Python
Ranorex通过Python将报告发送到邮箱的方法
2020/01/12 Python
python3爬虫中异步协程的用法
2020/07/10 Python
python实现企业微信定时发送文本消息的示例代码
2020/11/24 Python
html5+css3之制作header实例与更新
2020/12/21 HTML / CSS
什么是方法的重载
2013/06/24 面试题
法学专业个人求职信
2013/09/26 职场文书
优秀中专生推荐信
2013/11/17 职场文书
科技活动周标语
2014/10/08 职场文书
Python pandas之求和运算和非空值个数统计
2021/08/07 Python
68行Python代码实现带难度升级的贪吃蛇
2022/01/18 Python
使用Cargo工具高效创建Rust项目
2022/08/14 Javascript