v-show和v-if的区别

两者都是控制元素是否在页面上显示的。

<template>
    <div>
      <div id="show" v-show="isShow">v-show</div>
      <div id="if" v-if="isShow">v-if</div>
    </div>
</template>
<script>
export default {
  data() {
    return {
      isShow : true,
    }
  },
}
</script>
<style>
#show{
  width: 100px;
  height: 100px;
  background-color: darkcyan;
}
#if{
  width: 100px;
  height: 100px;
  background-color: gold;
}

区别:

v-show隐藏的时候是为元素添加cssdisplay属性为none,dom元素还存在

v-if是直接销毁dom元素

当我把isShow改为false后,第二个div直接被销毁了

所以:

如果需要频繁的切换,v-if反复销毁和重建dom元素的话会带来较高的性能消耗,因此频繁切换元素时最好使用v-show。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值