v-if 适用于在运行时很少改变条件,不需要频繁切换条件的场景。
v-show 适用于需要非常频繁切换条件的场景。
扩展补充:display:none 、 visibility:hidden 和 opacity:0 之间的
区别?
三者公共点都是隐藏。不同点:
· 一、是否占据空间。
display:none,隐藏之后不占位置;visibility:hidden、opacity:0,
隐藏后任然占据位置。
· 二、子元素是否继承。
display:none --- 不会被子元素继承,父元素都不存在了,子元素也
不会显示出来。
visibility:hidden --- 会被子元素继承,通过设置子元素
visibility:visible 来显示子元素。
opacity:0 --- 会被子元素继承,但是不能设置子元素 opacity:0 来先
重新显示。
· 三、事件绑定。
display:none 的元素都已经不存在了,因此无法触发他绑定的事件。
visibility:hidden 不会触发他上面绑定的事件。
opacity:0 元素上面绑定的事件时可以触发的。