v-for列表渲染

  1. 我们用 v-for 指令根据一组数组的选项列表进行渲染。v-for 指令需要使用 item in items 形式的特殊语法,items 是源数据数组并且 item 是数组元素迭代的别名。(与增强for循环类似)v-for列表渲染v-for列表渲染

 

输出结果

v-for列表渲染

  1.  v-for 块中,我们拥有对父作用域属性的完全访问权限。v-for 还支持一个可选的第二个参数为当前项的索引。

v-for列表渲染

 

附注:可以用 of 替代 in 作为分隔符,因为它是最接近 JavaScript 迭代器的语法:

v-for列表渲染

  1. 对象的v-for

可以用 v-for 通过一个对象的属性来迭代。

 

v-for列表渲染

 

附注:

可以提供第二个的参数为键名:

v-for列表渲染

 

第三个参数为索引:

v-for列表渲染

 

  1. Key

 当 Vue.js 用 v-for 正在更新已渲染过的元素列表时,它默认用“就地复用”策略。如果数据项的顺序被改变,Vue 将不会移动 DOM 元素来匹配数据项的顺序, 而是简单复用此处每个元素,并且确保它在特定索引下显示已被渲染过的每个元素。这个类似 Vue 1.x 的 track-by="$index" 。

这个默认的模式是高效的,但是只适用于不依赖子组件状态或临时 DOM 状态 (例如:表单输入值) 的列表渲染输出

为了给 Vue 一个提示,以便它能跟踪每个节点的身份,从而重用和重新排序现有元素,你需要为每项提供一个唯一 key 属性。理想的 key 值是每项都有的唯一 id。这个特殊的属性相当于 Vue 1.x 的 track-by ,但它的工作方式类似于一个属性,所以你需要用 v-bind 来绑定动态值 (在这里使用简写):

v-for列表渲染

建议尽可能在使用 v-for 时提供 key,除非遍历输出的 DOM 内容非常简单,或者是刻意依赖默认行为以获取性能上的提升。

因为它是 Vue 识别节点的一个通用机制,key 并不与 v-for 特别关联,key 还具有其他用途,我们将在后面的指南中看到其他用途。

 

相关文章:

  • 2022-12-23
  • 2022-01-04
  • 2021-12-27
  • 2021-11-25
  • 2022-12-23
  • 2021-10-03
  • 2021-11-24
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-06-29
  • 2021-07-12
  • 2021-12-02
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案