首先,在用法上的区别:
v-show是不支持template;
v-show不可以和v-else-起使用;
其次,本质的区别:
v-show元素无论是否需要显示到浏览器上,它的DOM实际都是有渲染的,只是通过CSS的display属性来进行切换;
v-if当条件为false时,其对应的元素压根不会被渲染到DOM中;
开发中如何进行选择呢 ?
如果我们的元素需要在显示和隐藏之间频繁的切换,那么使用v-show;
如果不会频繁的发生切换,那么使用v-if;
示例
<h2 v-if="isShow">哈哈哈</h2>
<h2 v-show="isShow">呵呵呵</h2>