【问题标题】:Is the react key local or global?反应键是本地的还是全局的?
【发布时间】:2018-04-13 21:21:41
【问题描述】:

阅读this article 关于使用index 是一个反应键。

假设我们有两个列表:

<List1>
  <el key="1" />
  <el key="2" />
</List1>

<List2>
  <other-el key="1" />
  <other-el key="2" />
</List2>

两个列表中的元素具有相同的keys 是否安全?是在元素之间全局共享键还是 List1 键是第一个列表的本地键,而 List2 键是第二个列表的本地键?

如果列表看起来像这样会不会更好:

<List1>
  <el key="1-1" />
  <el key="1-2" />
</List1>

<List2>
  <other-el key="2-1" />
  <other-el key="2-2" />
</List2>

【问题讨论】:

  • 键在单项中必须是唯一的。
  • 我写了一些类似于你在 Stack Overflow 上链接的文章。我想你会觉得它很有趣,它也会回答你的问题。链接如下。
  • Understanding unique keys for array children in React.js 的可能重复项。我知道您问的问题有点不同,但可以在该帖子中找到答案和更多内容。
  • @FelixKling 是的,但您不想输入“兄弟姐妹”吗? :)

标签: javascript reactjs key


【解决方案1】:

键只能在兄弟姐妹中唯一

数组中使用的键在它们的兄弟中应该是唯一的。然而 它们不需要是全球唯一的。

来源:https://reactjs.org/docs/lists-and-keys.html#keys-must-only-be-unique-among-siblings

【讨论】:

    猜你喜欢
    • 2013-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-15
    • 1970-01-01
    • 2017-03-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多