v-show和v-if的区别 SegmentedControl,切换

边浩漫
2023-12-01

v-show

v-show的用法与v-if基本一致,只不过v-show是改变元素的css属性display。当v-show表达式的值为false是,元素会隐藏,查看DOM结构看到元素上加载了内联样式display:none;

v-if

v-if是条件渲染
当v-if表达式的值为false是,元素会被销毁
它会确保条件快在切换时合适的销毁与重建条件块内的时间监听器和子组件。

如果写SegmentedControl的话最好使用v-show,这样不会每次切换都重新渲染,性能会好一些,如果有其他需求也可以用v-if

<div v-if="true">true</div>
<div v-else>false</div>

如果不需要来回切换可以建议使用v-if,如果条件是属于不是A就是B的话,可以把A设为v-if,B设为v-else,还有v-else-if,但是个人觉得如果条件很多也可以不同v-else,容易乱
v-else必须依赖于v-if使用

 类似资料: