zoukankan      html  css  js  c++  java
  • uni-app v-for中key的作用

    v-for中key可以使组件中的数据绑定唯一。

    比如以下实例

       <view>
            <view v-for="(stu,index) in stuArray"  :key="stu.id">
                
                <view>
                    <checkbox  value="false"/>
                    {{"姓名:"+stu.name+",年龄:"+stu.age+",序号:"+index}}
                </view>
                <view>
                    擅长技能:
                    <block v-for="sk in stu.skills">
                        {{sk}},
                    </block>
                </view>
            </view>
            <view>
                <button  @click="addStu">添加新生</button>
            </view>
        </view>

    key可以保证新增学生之后,复选框选中的数据不会随着数据增加而变化。

            data() {
                return {
                    stuArray:[
                        {id:1,name:"张三",age:12,skills:["Java","C#","Python"]},
                        {id:2,name:"李四",age:13,skills:["Sing","Dance","Rap","Basketball"]},
                        {id:3,name:"王五",age:14,skills:["Piano","Guitar","Trumpet"]}
                    ]
                }
            },
            methods: {
                addStu(){
                    var len=this.stuArray.length+1;
                    var newStu={
                        id:len,
                        name:"新生"+len,
                        age:13,
                        skills:["Chinese","Math"]
                    };
                    //push表示在数组的尾部进行添加元素
                    //this.stuArray.push(newStu);
                    
                    this.stuArray.unshift(newStu);
                }
            }

    unshift表示在数组的首部添加元素。

    如果不在v-for上添加key绑定学生的编号。

    那么反向添加的时候,选中的在只是数组的位置不变。但是元素发生变化。

    比如首次选中的是数组的第二个元素。

    如果添加了学生,选中的依然是数组的第二个元素,而不是第一次选择的元素。

    记录编程的点滴,体会学习的乐趣
  • 相关阅读:
    《自己动手写操作系统》:开发环境配置心得
    sip.conf配置详情
    MySQL字符串中数字排序的问题
    Asterisk iax错误提示
    Python 快速入门
    C# winfrom 导出word
    SetWindowsHookEx函数参数详解
    Ubuntu Linux系统下轻松架设nginx+php服务器应用
    TShockwaveFlash的使用
    检讨
  • 原文地址:https://www.cnblogs.com/AduBlog/p/15362365.html
Copyright © 2011-2022 走看看