vue中的v-for循环

 1.v-for遍历普通数组

in前面如果是一个变量,那么该变量保存的是数组中的数据in前面如果是两个变量,那么第一个变量保存的是数组中的数据,第二个变量保存的是下标





    
    
    
    Document



    
  • {{index}}-{{item}}

2.v-for遍历对象

如果是一个变量,那么保存的是对象中的属性值

如果是两个变量,那么第一个变量保存的是属性值,第二个变量保存的是属性名

如果是三个变量,那么第一个变量保存的是属性值,第二个变量保存的是属性名,第三个变量保存的是下标

v-for="o1 in obj"          o1:属性值

v-for="(o1,o2) in obj"     o1:属性值  o2:属性名


v-for="(o1,o2,o3) in obj"  o1:属性值  o2:属性名  o3:下标
 





    
    
    
    Document



    
  • {{item}}

  • {{ key }}-{{ val }}

3.v-for循环数字

in后面不仅可以放数组、对象数组、对象,还可以放数字

在in前面用一个变量存储当前次数,注意:此变量是从1开始,而不是从0开始





    
    
    
    Document



    
  • {{num}}

4. Key是什么?

Key 特殊属性主要用做 Vue 的虚拟 DOM 算法在将新节点列表与旧列表进行比较时识别 VNode 的提示。在没有键的情况下,Vue 使用一种算法来最小化元素移动,并尝试尽可能多地就地修补/重用相同类型的元素。使用键,它将根据键的顺序更改对元素进行重新排序,并且不再存在键的元素将始终被删除/销毁。

 5.有无Key值不同调用方法

Vue内部会对有无Key值的for循环进行不同方法的处理

(1) patchKeyedChildren

有 Key, 进行 patchKeyedChildren




    
    
    
    Document


    
  • {{item.name}}

(2)patchUnKeyedChildren

没有 Key ,进行 patchUnKeyedChildren




    
    
    
    Document


    
  • {{item.name}}

你可能感兴趣的:(vue.js,javascript,前端)