条件渲染,即根据指定的表达式的真假,来决定元素的渲染与否、显示与否
v-if
单个元素:
控制元素渲染与否,如果为否,则该元素不会出现在文档中<h1 v-if="isHave">sth.</h1><h1 v-else>sb.</h1>
多个元素:
由于 v-if 只是一个指令,因此只能用于单个元素。
但若要切换多个元素的话,可以使用一个 \ 来作为包装元素,对其使用 v-if,则可以实现多个元素切换。
(随便一个 div 貌似也可以做到,但是与 template 的区别在于,前者会保留在渲染结果,而 template 不会。因此用 template 会更好)
v-show
用法基本和 v-if 一致,除了不支持 \ 语法。
只是控制元素的 display 属性,元素始终渲染在 DOM 中。
v-else
必须和 v-if、v-show 连用。
组件警告
// 此处省略
Conclusion
运行时条件改变的可能性不大—— v-if
频繁切换—— v-show