条件渲染:
单个元素渲染:
v-if、v-else组合:
。。。。。。
<body>
<div id="vue1">
#单个元素渲染
<p v-if="isCreate">v-if</p>
<p v-else>v-else</p>
</div>
<script type="text/javascript">
var vm = new Vue({
el: "#vue1",
data: {
isCreate:true,
},
})
</script>
</body>
v-if、v-else-if、v-else组合:
。。。。。。
<body>
<div id="vue1">
#单个元素渲染
<p v-if="isCreate ==='A'">v-if</p>
<p v-else-if="isCreate ==='B'">v-else-if</p>
<p v-else>v-else</p>
</div>
<script type="text/javascript">
var vm = new Vue({
el: "#vue1",
data: {
isCreate:'B',
},
})
</script>
</body>
用v-if下面紧跟着v-else,其中如果没有v-if或v-else-if v-else不会被识别。
多个元素渲染:
。。。。。。
<body>
<div id="vue1">
#多个元素渲染
<template v-if="isCreates">
<p>第一个</p>
<p>第二个</p>
</template>
<template v-else>
<p>第三个</p>
<p>第四个</p>
</template>
</div>
<script type="text/javascript">
var vm = new Vue({
el: "#vue1",
data: {
isCreates:false
},
})
</script>
</body>
在单个元素渲染的基础上添加一个template标签,而且这个标签最终不会被渲染到里面。个人觉得就是一个打包的作用。
v-if和v-show区别:
v-if:
如果为false就不会创建节点,如果为true就会创建节点。
v-show:
如果为flase页面不会显示,但是会创建节点;如果为true会显示也会创建节点。