Vue第三讲

条件渲染

Vue中提供了 v-ifv-elsev-else-if 来实现条件渲染。

v-if 和 v-show 的区别:

(1)v-if是通过控制元素是否在DOM节点中渲染,来决定元素的显示或隐藏;

(2)v-show是通过控制元素的display的CSS样式,来决定元素的显示或隐藏。

当我们需要频繁的进行显示/隐藏的切换时,用v-show,否则就用v-if。

列表渲染

有四种可以渲染:数组、对象、字符串、数字。

1.数组:

        <ul>
            <li v-for="(item,index) in students">{{index}}-{{item.name}}</li>
        </ul>
 new Vue({
        el: '#app',
        data() {
            return {
                students: [
                    {
                        name: '张三',
                        age: 10
                    },
                    {
                        name: '李四',
                        age: 10
                    },
                    {
                        name: '王五',
                        age: 10
                    }
                ],
               
            }
        }
    })

 2.对象

        <ol>
            <li v-for="(value,key) in person">{{value}}-{{key}}</li>
        </ol>
new Vue({
        el: '#app',
        data() {
            return {
                person: {
                    name:'zhangsan',
                    age:10,
                    gender:'male'
                },
            }
        }
    })

 3.字符串

 <p v-for="item in msg">{{item}}</p>
 new Vue({
        el: '#app',
        data() {
            return {
              msg:'hello'
            }
        }
    })

 4.数字

<span v-for="item in 5">{{item}}</span>

 注意

1.在使用列表渲染时,应给每一个添加的元素一个唯一的key值来标记;

示例1

        <ul>
            <li v-for="(item,index) in students" :key = index>{{index}}-{{item.name}}</li>
        </ul>

2.可使用template实现批量的循环添加;

 <template v-for="(item,index) in 6">
            <h1 :key="index + 'a'">aa</h1>
            <h1 :key="index + 'b'">bb</h1>
            <h1 :key="index + 'c'">cc</h1>
 </template>

3.不推荐 v-if、v-for用在同意元素上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值