解析v-if和v-show的区别和使用场景

本文对比了Vue中v-if和v-show的区别,v-if用于动态添加/删除DOM,涉及局部编译卸载,适用于低频切换;v-show则基于CSS显示隐藏,无编译卸载过程,适合高频切换。同时讨论了两者适用场景和限制,如v-if与v-for的配合问题。
摘要由CSDN通过智能技术生成

官方文档

地址 v-if vs v-show

在这里插入图片描述


区别汇总

  • v-if是动态的向DOM树内添加或者删除DOM元素;v-show是通过设置DOM元素的display样式属性控制显隐;
  • v-if切换有一个局部编译/卸载的过程,切换过程中合适地销毁和重建内部的事件监听和子组件;v-show只是简单的基于css切换
  • v-if是惰性的,如果初始条件为假,则什么也不做;v-show是在任何条件下(首次条件是否为真)都被编译,然后被缓存,而且DOM元素保留;
  • v-if适用于低频率切换场景,v-show适用于频繁切换场景
  • v-if可以配合template标签使用,v-show不可以

题外:v-if 和 v-for不能一起使用

因为v-for比v-if有更高的优先级

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值