我们都知道v-if和v-show都可以使元素显示或者隐藏,那么他们最大的区别是什么呢?我们一起来探讨一下!
v-if的本质上是创建动态元素或者删除元素节点。
一般不用频繁切换,要么显示要么隐藏的情况,我会用到v-if。因为v-if是惰性的,如果初始值为false,那么这些元素就直接不创建了,这样可以节省一些初始渲染开销 。
v-show的本质是控制元素css样式display:none/block
一般匀速需要频繁切换,也就是说切换次数较少时就会用到v-show,因为v-if在频繁切换上会大量的创建和删除元素,消耗性能。
他们各自有各自的应用场景,就比如在我们做登录页面的登录方式的切换的时候,这时候我们用v-if会比较合适,切换次数较少,而在我们做页面弹窗或者移入移出隐藏显示的时候,我们可以用v-show的指令来进行操作。