Vue - 条件渲染:v-if 、v-else-if、v-else、 v-show
- v-if
- v-else-if
- v-else
- v-show 条件展示
简单明了,直接上案例:
案例:
<body>
<div id="app">
<h3> 条件渲染 - 单路分支 </h3>
<p v-if = "flag"> A </p>
<h3> 条件渲染 - 双路分支 </h3>
<p v-if = "flag"> A </p>
<p v-else > B </p>
<h3> 条件渲染 - 多路分支 </h3>
<p v-if = "type === '美食'"> 美食 </p>
<p v-else-if = " type === '游戏' "> 游戏 </p>
<p v-else> 睡觉 </p>
<h3> 条件展示 </h3>
<p v-show = " showFlag "> 条件展示 </p>
</div>
</body>
<script src="../../lib/vue.js"></script>
<script>
new Vue({
el: '#app',
data: {
flag: true,
type: '美食',
showFlag: true
}
})
</script>
页面输出:
总结
:
思考: v-if vs v-show
1. 效果看起来一样
2. why Vue要出两个相似的指令?
v-if控制的是元素的存在与否
v-show控制的是元素的display:none属性
得出结论:如果出事条件为假时,v-show 的性能损耗 比v-if 高。
所以项目中:
频繁切换用 v-show
如果不是很频繁的切换,那我们用 v-if