React笔记——核心概念:8.列表&Key

1、回顾javascript转换列表

  • 示例

2、渲染多个组件

  • 使用 {} 在 JSX 内构建一个元素集合
  • 示例

3、基础列表组件

  • 8-2的示例重构成组件

4、Key

  • key帮助React识别哪些元素改变了
  • 一个元素的 key 最好是这个元素在列表中拥有的一个独一无二的字符串
    • 通常,我们使用数据中的 id 来作为元素的 key
    • 当元素没有确定 id 的时候,可以使用元素索引 index 作为 key

      • 如果列表项目的顺序可能会变化,不建议使用索引来用作 key 值,因为这样做会导致性能变差,还可能引起组件状态的问题

5、用 key 提取组件

  • 元素的 key 只有放在就近的数组上下文中才有意义
    • 经验法则:在 map() 方法中的元素需要设置 key 属性
  • 正确示例:

6、key 只是在兄弟节点之间必须唯一

  • 数组元素中使用的 key 在其兄弟节点之间应该是独一无二的

  • key 会传递信息给 React ,但不会传递给你的组件
    • 如果你的组件中需要使用 key 属性的值,请用其他属性名显式传递这个值

7、在 JSX 中嵌入 map()

  • JSX 允许在大括号中嵌入任何表达式