Vue页面切换和a链接的本质区别详解


Posted in Javascript onNovember 12, 2019

Vue-router是伴随着Vue框架出现的路由系统,它也是公认的一种优秀的路由解决方案。在使用Vue-router时候,我们常常会使用其自带的路径跳转组件Link,通过<Link to="path"></Link>实现跳转,这和传统的<a href="path" rel="external nofollow" ></a>何其相似!但它们到底有什么具体的区别呢?

对比<a>,Link组件避免了不必要的重渲染

A -- 通过<a>标签实现页面跳转:(图中的例子将会在下面详细解答)

图一

Vue页面切换和a链接的本质区别详解

图二

Vue页面切换和a链接的本质区别详解

图三

Vue页面切换和a链接的本质区别详解

B --通过<Link>组件实现页面跳转:

图一

Vue页面切换和a链接的本质区别详解

图二

Vue页面切换和a链接的本质区别详解

只更新变化的部分从而减少DOM性能消耗

Vue的创新之处在于,它利用虚拟DOM的概念和diff算法实现了对页面的"按需更新",Vue-router很好地继承了这一点,譬如上图所示,导航组件和三个Tab组件(通过...,通过...,通过...)的重渲染是我们不希望看到的,因为无论跳转到页面一或是页面二,它只需要渲染一次就够了。<Link>组件帮助我们实现了这个愿望,反观<a>标签,每次跳转都重渲染了导航组件和Tab组件试想一下,在一个浩大的项目里,这多么可怕!我们的"渲染"做了许多"无用功",而且消耗了大量弥足珍贵的DOM性能!

以上这篇Vue页面切换和a链接的本质区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
获取DOM对象的几种扩展及简写
Oct 09 Javascript
ASP.NET jQuery 实例2 (表单中使用回车在TextBox之间向下移动)
Jan 13 Javascript
jQuery获得内容和属性示例代码
Jan 16 Javascript
Jquery揭秘系列:ajax原生js实现详解(推荐)
Jun 08 Javascript
jquery制做精致的倒计时特效
Jun 13 Javascript
JS中如何实现Laravel的route函数详解
Feb 12 Javascript
javascript数据结构中栈的应用之符号平衡问题
Apr 11 Javascript
addeventlistener监听scroll跟touch(实例讲解)
Aug 04 Javascript
快速解决处理后台返回json数据格式的问题
Aug 07 Javascript
vue-router实现编程式导航的代码实例
Jan 19 Javascript
Vue框架下引入ActiveX控件的问题解决
Mar 25 Javascript
JS性能优化实现方法及优点进行
Aug 30 Javascript
vue 中几种传值方法(3种)
Nov 12 #Javascript
Vue 中 a标签上href无法跳转的解决方式
Nov 12 #Javascript
javascript严格模式详解(含严格模式与非严格模式的区别)
Nov 12 #Javascript
vue.js 实现a标签href里添加参数
Nov 12 #Javascript
VUEX 数据持久化,刷新后重新获取的例子
Nov 12 #Javascript
react-native聊天室|RN版聊天App仿微信实例|RN仿微信界面
Nov 12 #Javascript
实现vuex与组件data之间的数据同步更新方式
Nov 12 #Javascript
You might like
PHP结合JQueryJcrop实现图片裁切实例详解
2014/07/24 PHP
PHP简单字符串过滤方法示例
2016/09/04 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
2017/07/19 PHP
PHP中define() 与 const定义常量的区别详解
2019/06/25 PHP
载入进度条 效果
2006/07/08 Javascript
网站页面自动跳转实现方法PHP、JSP(下)
2010/08/01 Javascript
JS面向对象编程 for Cookie
2010/09/19 Javascript
在页面上用action传递参数到后台出现乱码的解决方法
2013/12/31 Javascript
jQuery中DOM树操作之复制元素的方法
2015/01/23 Javascript
轻松学习jQuery插件EasyUI EasyUI实现树形网络基本操作(2)
2015/11/30 Javascript
js仿百度切换皮肤功能(html+css)
2016/07/10 Javascript
Javascript 实现放大镜效果实例详解
2016/12/03 Javascript
JavaScript表单验证的两种实现方法
2017/02/11 Javascript
Node.js文件编码格式的转换的方法
2018/04/27 Javascript
vue返回上一页面时回到原先滚动的位置的方法
2018/12/20 Javascript
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
JS前端知识点 运算符优先级,URL编码与解码,String,Math,arguments操作整理总结
2019/06/27 Javascript
vue实现一拉到底的滑动验证
2019/07/25 Javascript
初学vue出现空格警告的原因及其解决方案
2019/10/31 Javascript
[00:32]2018DOTA2亚洲邀请赛Secret出场
2018/04/03 DOTA
python中的计时器timeit的使用方法
2017/10/20 Python
python3.4.3下逐行读入txt文本并去重的方法
2018/04/29 Python
基于Python的一个自动录入表格的小程序
2020/08/05 Python
python合并多个excel文件的示例
2020/09/23 Python
使用CSS3的背景渐变Text Gradient 创建文字颜色渐变
2014/08/19 HTML / CSS
你不知道的5个HTML5新功能
2016/06/28 HTML / CSS
Exception类的常用方法
2012/06/16 面试题
自荐书格式
2013/12/01 职场文书
课程设计心得体会
2013/12/28 职场文书
自我评价如何写好?
2014/01/05 职场文书
医学院毕业生自荐信范文
2014/03/06 职场文书
竞聘报告优秀范文
2014/11/06 职场文书
幼儿园开学家长寄语(2015秋季)
2015/05/27 职场文书
幼儿园六一主持词开场白
2015/05/28 职场文书
2015年重阳节主持词
2015/07/04 职场文书
tomcat默认最大连接数及相关调整方法
2022/05/06 Servers