1.为什么要使用key值:
因为在改变show后,页面进行重新渲染时,会尽量复用页面上的DOM,导致已经输入的用户名的input没有清空并继续作为邮箱的input使用;为某个标签添加key值(名字任意)之后,Vue会知道是页面唯一的元素,两个key值不一样, Vue就不会尝试复用这个标签。
2.数组循环
为了提升循环显示的性能,会给每个循环项上加一个唯一的key值,
这里不是很推荐写inedx值,会频繁造作DOM元素相对应的数据,废性能,可能会导致Vue没有办法充分复用节点,一般项目中除了内容还会返回id,使用这个id作为标识`:key='item.id'
当我们为数组增加内容的时候,不能使用数组的下标形式添加/改变数组, 第一种响应式改变数组数据的方法:我们只能通过vue提供的7个数组变异方法来操作数组,才能够实现数据发生变化,页面也跟着变化这种响应式的方法:
7个 数组变异方法: push增加最后一项、pop删除最后一项、shift删除第一项 、unshift添加第一项、 splice(1开 始下标,1个数,添加的内容)数组的截取 、sort数组排序、 reverse数组取反;
第二种响应式改变数组数据的方法:改变数组内容并响应的方法,就是“改变引用” ,直接修改引用的list,让它指向另一个数组的地址
第三种set方法:第二个参数代表了数组的下标,第三个是改变的内容
Vue.set方法[全局方法]:Vue.set(vm.userInfo , 2 , "beijing")