必须在应用

时间:2018-06-04 13:39:05

标签: arrays reactjs key

如果这是一个重复的问题,我会道歉,但我似乎无法在任何地方找到答案。我从其他各种问题中了解到,在reactjs中使用组件数组时,每个组件都有一个唯一的密钥非常重要。

我的问题

如果我有几个数组,对于我的页面/应用程序的不同部分,每个元素是否需要一个与应用程序中的每个其他元素相对应的唯一键,或者React是否只需要在每个单独的数组中都没有重复的钥匙?

1 个答案:

答案 0 :(得分:1)

我没有任何一些文档的链接可以解释这一点,但是我记得,一个密钥在父母的孩子身上必须是唯一的。

通常元素中只有一个元素数组(因此键在此数组中必须是唯一的)。但如果有类似的东西:

<ul>
  {
    array1.each(element => <li key={element.uniqueId} />)
  }
  {
    array2.each(element => <li key={element.uniqueId} />)
  }
</ul>

然后,数组1和2上的元素必须在它们之间具有uniqueId。你可以通过以下方式实现这一目标:

<ul>
  {
    array1.each(element => <li key={"array1"+element.uniqueId} />)
  }
  {
    array2.each(element => <li key={"array2"+element.uniqueId} />)
  }
</ul>