v-if和v-show都能够用来控制元素的显示与隐藏
v-if是通过操作dom来控制元素显示与隐藏,根据表达式的值的真假条件来决定是否渲染元素,如果条件为false不渲染(达到隐藏元素的目的),为true则渲染。在切换时元素及它的数据绑定被销毁并重建;
而v-show是根据表达式的真假值,切换元素的 display CSS 属性,如果为false,则在元素上添加 display:none来隐藏元素,否则移除display:none实现显示元素;
使用场景的区别:
1. 如果页面中涉及到异步数据渲染的话,就用v-if
2. 如果页面中涉及到大量dom元素的显示与隐藏的话,用v-show