【问题标题】:Using index as key for React Components?使用索引作为 React 组件的键?
【发布时间】:2020-10-03 10:54:51
【问题描述】:

我正在我的 react 应用程序中呈现一个列表,其中:

  • 只会将新元素附加到列表末尾。
  • 每次删除一个元素时,它只会是最后一个元素。

鉴于这些条件以及不打算以任何方式重新排序元素。我可以将索引用作key 属性而没有任何问题吗?

【问题讨论】:

  • 虽然您可以考虑的唯一因素是 1. 您所在的团队可能会忽略或不了解您的情况,以及 2. 您可能永远不会改变日后的功能。

标签: javascript arrays reactjs


【解决方案1】:

是的!

你可以在这里阅读 React 文档所说的内容:https://reactjs.org/docs/lists-and-keys.html#keys

主要是这样的:如果项目的顺序可能发生变化,我们不建议使用索引作为键。 T

您也可以查看这篇文章:https://medium.com/@robinpokorny/index-as-a-key-is-an-anti-pattern-e0349aece318

据此,如果你满足这个条件:

  1. 列表和项目是静态的——它们不会被计算也不会改变;
  2. 列表中的项目没有 ID
  3. 列表永远不会重新排序或过滤。

你应该很高兴。

【讨论】:

    猜你喜欢
    • 2020-04-18
    • 2022-11-26
    • 2013-08-22
    • 1970-01-01
    • 2012-04-29
    • 1970-01-01
    • 2021-12-25
    • 1970-01-01
    相关资源
    最近更新 更多