条件渲染
v-if的用法
代码演示:
<head>
<title>vue条件渲染</title>
<!-- 使用CDN引入Vue -->
<script src="https://unpkg.com/vue@next"></script>
</head>
<body>
<div id="root"></div>
<script>
const app = Vue.createApp({
data(){
return {
content: 'Hello Vue.js!',
show: false
}
},
template:'<div v-if="show">{{content}}</div>'
})
const vm = app.mount('#root');
</script>
</body>
</html>
页面效果:
v-if、v-else的用法
代码演示:
const app = Vue.createApp({
data(){
return {
content: 'Hello Vue.js!',
show: false
}
},
template:`
<div v-if="show">{{content}}</div>
<div v-else>else</div>
`
})
const vm = app.mount('#root');
页面效果:
v-if、v-else-if、v-else的用法
代码演示:
const app = Vue.createApp({
data(){
return {
content: 'Hello Vue.js!',
show: false,
condition: true
}
},
template:`
<div v-if="show">{{content}}</div>
<div v-else-if="condition">elseif</div>
<div v-else>else</div>
`
})
const vm = app.mount('#root');
页面效果:
v-show的用法
代码演示:
const app = Vue.createApp({
data(){
return {
content: 'Hello Vue.js!',
show: true
}
},
template:`
<div v-show="show">{{content}}</div>
`
})
const vm = app.mount('#root');
页面效果:
v-if 和 v-show 的区别
代码演示:
const app = Vue.createApp({
data(){
return {
content: 'Hello Vue.js!',
show: true
}
},
template:`
<div v-if="show">{{content}}</div>
<div v-show="show">{{content}}</div>
<div v-if="!show">{{content}}</div>
<div v-show="!show">{{content}}</div>
`
})
// vm 代表vue 应用的根节点
const vm = app.mount('#root');
页面效果:
- 相同点:两种条件渲染方式的页面效果相同;
- 不同点:
- ==v-if条件不成立,会销毁DOM==;
- ==v-show条件不成立,通过样式将DOM隐藏但DOM存在==;
- 使用:在频繁使用时建议使用 v-show,它不用频繁创建、销毁DOM性能更好;
结语
本小节到此结束,谢谢大家的观看!
如有问题欢迎各位指正
标签:Vue,const,show,--,app,vm,js,content From: https://blog.51cto.com/u_15718546/5869395