在这种情况下,可以忽略反应关键道具警告

时间:2018-10-09 11:23:30

标签: reactjs

一个常见的模式是从数组生成反应元素。如果要遍历React组件,是否有任何情况应该/可以忽略关键道具警告?

就像元素渲染静态文本一样,我们可以忽略吗? 注意:渲染后,我的元素将不会更改,请添加或删除。

const days = ['Sunday' 'Mon.........,,, 'Saturday'];

days.map(day => <div>{day}</div>);

1 个答案:

答案 0 :(得分:0)

您不应忽略此警告。

已阅读文档:https://reactjs.org/docs/lists-and-keys.html#keys

  

键可帮助React识别哪些项目已更改,添加或删除。应该为数组内的元素赋予键,以赋予元素稳定的身份

如果您确实没有要使用的键之类的值,则可以使用数组的索引(假设其索引来自静态排序的源),以便react可以使用这些键来标识已更改的内容。

const myArray = ["Some", "Static", "Stuff"]

const MyComponent = () => (
  <div>
    {myArray.map((item, i) => <div key={i}>{item}</div>)}
  </div>
)