Vue学习 开始走向VUE开发5---条件渲染详解

这一节我们来讲条件渲染,单独讲解条件渲染可能比较单调和简单,这里我添加了v-for的组合使用。

条件渲染主要有v-if,v-else-if,v-else,v-show。

v-if后面接的表达式需要指明结果是真还是假,当条件为真时渲染v-if所在标签的内容,当条件为假是不渲染v-if所在标签的内容。

v-else-if后面接的表达式指明结果为真还是假,当条件为真时渲染v-else-if所在标签的内容,当条件为假是不渲染v-else-if所在标签的内容。

v-else是当上述的条件都不成立时,渲染v-else标签内的内容。

v-show后面接的表达式需要指明结果为真还是假,当结果为真时显示v-show所在标签内的内容,当为假时隐藏v-show所在标签内的内容。

v-for可以批量的处理一些数据上具有相同结构的数据。

概念上的东西先将这多,来点干货让大家感受一下。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue</title>
<script src="https://cdn.bootcss.com/vue/2.6.2/vue.min.js"></script>
</head>
<body>
<div id="test">
    <div v-for="item in data">
        <div v-show="!item.hide" >id is {{item.id}}
            <input type="text" v-model="item.id">
            <input type="text" v-model="item.name">
            <input type="text" v-model="item.age">
            <input type="radio" v-if="item.sex==='male'">
            <input type="checkbox" v-else-if="item.sex==='female'">
            <input type="button" v-else>
        </div>
    </div>
</div>
 
<script>
var value=0;
var vm = new Vue({  
        el: '#test',  
        data: {  
            data:[
                {
                    id:1,
                    name:"first",
                    age:15,
                    sex:"male",
                    hide:false
                },
                {
                    id:2,
                    name:"second",
                    age:19,
                    sex:"female",
                    hide:false
                },
                {
                    id:3,
                    name:"third",
                    age:20,
                    sex:"",
                    hide:false
                },
                {
                    id:4,
                    name:"fourth",
                    age:24,
                    sex:"male",
                    hide:true
                }
            ]
        },
    });  
</script>
</body>
</html>

程序设计

(1)数据结构data为人的信息,有ID号,名字,性别,年龄,信息是否隐藏这些组成。

(2)设计使用v-for遍历人员信息数组,当人员信息的hide属性为true时隐藏这个人的信息,如果为false显示这个人的信息,

显示人员信息的id,name,age,根据人员信息的sex属性值为male显示单选按钮,当属性值为female时显示复选按钮,为其他值时显示按钮。

结果

 

从图中可以看到显示的结果和设计的结果一致,同时在DOM结构中看到v-show部分的显示状态为none而不是没有渲染。

v-for结合这些条件渲染可对数据结构具有相似性的数据进行渲染节省代码在项目中具有很强的抽象性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值