我有一个由不同字符串组成的数组。我想通过它进行映射并在React中显示它。当两个字符串相同时,React不喜欢它。
我的问题是:我有没有办法通过数组映射并将数组中元素的位置(0,1,2,3 ..)作为键?我不确定如何访问它?我可以吗?
let renderthis = this.props.myreducer.somearray.map((element) =>
<span key={what can I put here?}>{element} </span>
);
我尝试了这个顺便说一句,但它不起作用:
let renderthis = this.props.myreducer.somearray.map((element, i) =>
<span key={i}>{element} </span>
);
警告:flattenChildren(...):遇到两个孩子一样 键,
.1:$afaf
。子键必须是唯一的;当两个孩子分享一个 键,只会使用第一个孩子。
答案 0 :(得分:1)
Array.prototype.map
回调接受第二个参数作为项索引。
这意味着如果您只需要每个元素集合中的唯一键,并且您没有任何其他自然独特的值,那么您可以这样做:
let renderthis = this.props.myreducer.somearray.map((element, i) =>
<span key={i}>{element} </span>
);