VUE中的v-if与v-show区别介绍


Posted in Vue.js onMarch 13, 2022

1.共同点

都是动态显示DOM元素

2.区别

  • (1)手段:v-if是动态的向DOM树内添加或者删除DOM元素;v-show是通过设置DOM元素的display样式属性控制显隐;
  • (2)编译过程:v-if切换有一个局部编译/卸载的过程,切换过程中合适地销毁和重建内部的事件监听和子组件;v-show只是简单的基于css切换;
  • (3)编译条件:v-if是惰性的,如果初始条件为假,则什么也不做;只有在条件第一次变为真时才开始局部编译(编译被缓存?编译被缓存后,然后再切换的时候进行局部卸载); v-show是在任何条件下(首次条件是否为真)都被编译,然后被缓存,而且DOM元素保留;
  • (4)性能消耗:v-if有更高的切换消耗;v-show有更高的初始渲染消耗;
  • (5)使用场景:v-if适合运营条件不大可能改变;v-show适合频繁切换。

Tips:如果v-show作用的元素,css文件中display:none,通过v-show进行设置不能显示该元素;

原因:v-show控制显隐,是通过js代码去修改元素的element style,如果value为false,设置display: none;如果value为true,设置display: '';于是value为true时,只能将element style中的display效果清除,并不能覆盖css中的display效果;

如下图所示,value=true时,v-show改变的是element.style,由于无效,显示效果由css文件中的display决定。

VUE中的v-if与v-show区别介绍

解决办法:使用v-show的话,在vue解析之前隐藏DOM的话,尽量在style属性里面设置display的值,不要在css文件中。

<ul v-touch:tap="message=2" style="display: none" v-show="show">

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Vue.js 相关文章推荐
vue实现下载文件流完整前后端代码
Nov 17 Vue.js
Vue3+elementui plus创建项目的方法
Dec 01 Vue.js
Vue router安装及使用方法解析
Dec 02 Vue.js
Vue+penlayers实现多边形绘制及展示
Dec 24 Vue.js
Vue仿百度搜索功能
Dec 28 Vue.js
Vue 修改网站图标的方法
Dec 31 Vue.js
vuex的使用和简易实现
Jan 07 Vue.js
Vue项目中使用mock.js的完整步骤
Jan 12 Vue.js
Vue实现多页签组件
Jan 14 Vue.js
Vue 实现可视化拖拽页面编辑器
Feb 01 Vue.js
Vue全局事件总线你了解吗
Feb 24 Vue.js
关于vue-router-link选择样式设置
Apr 30 Vue.js
Vue.js中v-bind指令的用法介绍
Mar 13 #Vue.js
Vue2.0搭建脚手架
Vue.js中v-for指令的用法介绍
Mar 13 #Vue.js
Vue如何清空对象
Mar 03 #Vue.js
Vue中Object.assign清空数据报错的解决方案
Mar 03 #Vue.js
vue实现移动端div拖动效果
Mar 03 #Vue.js
vue实现滑动解锁功能
You might like
php 友好URL的实现(吐血推荐)
2008/10/04 PHP
PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁
2014/06/09 PHP
php实现删除指定目录下相关文件的方法
2014/10/20 PHP
YII2框架中excel表格导出的方法详解
2017/07/21 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
2017/12/21 PHP
ThinkPHP5.0多个文件上传后找不到临时文件的修改方法
2018/07/30 PHP
PHP验证类的封装与使用方法详解
2019/01/10 PHP
jQuery validate 中文API 附validate.js中文api手册
2010/07/31 Javascript
JavaScript:new 一个函数和直接调用函数的区别分析
2013/07/10 Javascript
JavaScript定义类和对象的方法
2014/11/26 Javascript
jquery实现图片上传之前预览的方法
2015/07/11 Javascript
js定义类的几种方法(推荐)
2016/06/08 Javascript
js精准的倒计时函数分享
2016/06/29 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
2016/10/08 Javascript
JS实现课堂随机点名和顺序点名
2017/03/09 Javascript
python采用requests库模拟登录和抓取数据的简单示例
2014/07/05 Python
python登录pop3邮件服务器接收邮件的方法
2015/04/30 Python
python异常和文件处理机制详解
2016/07/19 Python
Python中的日期时间处理详解
2016/11/17 Python
TensorFlow模型保存和提取的方法
2018/03/08 Python
python: 自动安装缺失库文件的方法
2018/10/22 Python
对Python中plt的画图函数详解
2018/11/07 Python
详解python数据结构和算法
2019/04/18 Python
详解django使用include无法跳转的解决方法
2020/03/19 Python
python 实现控制鼠标键盘
2020/11/27 Python
移动HTML5前端框架—MUI的使用
2017/12/18 HTML / CSS
LACOSTE波兰官网:Polo衫、服装和鞋类
2020/09/29 全球购物
法律专业个人实习自我鉴定
2013/09/23 职场文书
酒店总经理工作职责
2013/12/13 职场文书
会计求职信
2014/05/29 职场文书
保护水资源的标语
2014/06/17 职场文书
2014年审计工作总结
2014/11/17 职场文书
仓库保管员岗位职责
2015/02/09 职场文书
催款律师函范文
2015/05/27 职场文书
创业开店,这样方式更合理
2019/08/26 职场文书
导游词之青岛太清宫
2019/12/13 职场文书