vue-router实现编程式导航的代码实例


Posted in Javascript onJanuary 19, 2019

除了使用 <router-link> 创建 a 标签来定义导航链接,我们还可以借助 router 的实例方法,通过编写代码来实现。即:通过js动态的进行导航链接。

一、this.$router.push( )

router.push(location, onComplete?, onAbort?)

注意:在 Vue 实例内部,你可以通过 $router 访问路由实例。因此你可以调用 this.$router.push。

想要导航到不同的 URL,则使用 router.push 方法。这个方法会向 history 栈添加一个新的记录,所以,当用户点击浏览器后退按钮时,则回到之前的 URL。

当你点击 <router-link> 时,这个方法会在内部调用,所以说,点击 <router-link :to="..."> 等同于调用 router.push(...)。

vue-router实现编程式导航的代码实例

vue-router实现编程式导航的代码实例

vue-router实现编程式导航的代码实例

vue-router实现编程式导航的代码实例

vue-router实现编程式导航的代码实例

vue-router实现编程式导航的代码实例

效果:

vue-router实现编程式导航的代码实例

vue-router实现编程式导航的代码实例

二、this.$router.replace();用法同this.$router.replace()

router.replace(location, onComplete?, onAbort?)

跟 router.push 很像,唯一的不同就是,它不会向 history 添加新记录(地址栏中),而是跟它的方法名一样 —— 替换掉当前的 history 记录。

vue-router实现编程式导航的代码实例

三、this.$router.go()

vue-router实现编程式导航的代码实例

小结:

router.push(location)

想要导航到不同的 URL,则使用 router.push 方法。这个方法会向 history 栈添加一个新的记录,所以,当用户点击浏览器后退按钮时,则回到之前的 URL。

router.replace(location)

跟 router.push 很像,唯一的不同就是,它不会向 history 添加新记录,而是跟它的方法名一样 —— 替换掉当前的 history 记录。

router.go(n)

这个方法的参数是一个整数,意思是在 history 记录中向前或者后退多少步,类似 window.history.go(n)

若有不足请多多指教!希望给您带来帮助!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Javascript 相关文章推荐
javascript编程起步(第七课)
Jan 10 Javascript
javascript 模式设计之工厂模式学习心得
Apr 27 Javascript
js对象的构造和继承实现代码
Dec 05 Javascript
初学js插入节点appendChild insertBefore使用方法
Jul 04 Javascript
jQuery遍历DOM节点操作之filter()方法详解
Apr 14 Javascript
有关jquery与DOM节点操作方法和属性记录
Apr 15 Javascript
详解JavaScript节流函数中的Throttle
Jul 16 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
Apr 23 jQuery
Vue.js常用指令之循环使用v-for指令教程
Jun 27 Javascript
Vue常用的全选/反选的示例代码
Feb 19 Javascript
Vue中keep-alive的两种应用方式
Jul 15 Javascript
详解Vue的mixin策略
Nov 19 Vue.js
vue数据操作之点击事件实现num加减功能示例
Jan 19 #Javascript
vue-router命名路由和编程式路由传参讲解
Jan 19 #Javascript
Vue实现的父组件向子组件传值功能示例
Jan 19 #Javascript
vue-router命名视图的使用讲解
Jan 19 #Javascript
微信小程序实现提交input信息到后台的方法示例
Jan 19 #Javascript
微信小程序实现基于三元运算验证手机号/姓名功能示例
Jan 19 #Javascript
vue-router重定向和路由别名的使用讲解
Jan 19 #Javascript
You might like
新浪新闻小偷
2006/10/09 PHP
php使用GD库创建图片缩略图的方法
2015/06/10 PHP
js 完美图片新闻轮转效果,腾讯大粤网首页图片轮转改造而来
2011/11/21 Javascript
jquery左边浮动到一定位置时显示返回顶部按钮
2014/06/05 Javascript
Javascript中的异步编程规范Promises/A详细介绍
2014/06/06 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
js操作IE浏览器弹出浏览文件夹可以返回目录路径
2014/07/14 Javascript
jquery 插件实现多行文本框[textarea]自动高度
2015/03/04 Javascript
JavaScript中扩展Array contains方法实例
2020/08/23 Javascript
jquery超简单实现手风琴效果的方法
2015/06/05 Javascript
详解JavaScript基本类型和引用类型
2015/12/09 Javascript
javascript实现html页面之间参数传递的四种方法实例分析
2015/12/15 Javascript
jQuery将表单序列化成一个Object对象的实例
2016/11/29 Javascript
vue-router单页面路由
2017/06/17 Javascript
JavaScript数组,JSON对象实现动态添加、修改、删除功能示例
2018/05/26 Javascript
浅谈Vue.js路由管理器 Vue Router
2018/08/16 Javascript
JavaScript事件对象深入详解
2018/12/30 Javascript
vue2 拖动排序 vuedraggable组件的实现
2019/08/08 Javascript
JavaScript实现图片轮播特效
2019/10/23 Javascript
Vue环境搭建+VSCode+Win10的详细教程
2020/08/19 Javascript
python通过装饰器检查函数参数数据类型的方法
2015/03/13 Python
Python之Scrapy爬虫框架安装及简单使用详解
2017/12/22 Python
Python实现打砖块小游戏代码实例
2019/05/18 Python
Pycharm如何打断点的方法步骤
2019/06/13 Python
linux环境下Django的安装配置详解
2019/07/22 Python
Python 装饰器@,对函数进行功能扩展操作示例【开闭原则】
2019/10/17 Python
修改Pandas的行或列的名字(重命名)
2019/12/18 Python
PyCharm中如何直接使用Anaconda已安装的库
2020/05/28 Python
基于python tkinter的点名小程序功能的实例代码
2020/08/22 Python
python UDF 实现对csv批量md5加密操作
2021/01/01 Python
利用HTML5的新特点实现图片文件异步上传
2014/05/29 HTML / CSS
如何为DataGridView添加一个定制的Column Type
2014/01/21 面试题
卫校中专生个人自我评价
2013/09/19 职场文书
幼儿园园长安全责任书
2015/05/08 职场文书
领导离职感言
2015/08/03 职场文书
2019年作为一名实习生的述职报告
2019/09/29 职场文书