Javascript 不能';无法消除地图中唯一键的反应警告
我下面的代码有什么问题?我有key={obj.\u id},我希望我不会看到警告,但我仍然得到它 警告:数组或迭代器中的每个子级都应具有唯一的“键” 道具请检查渲染方法Javascript 不能';无法消除地图中唯一键的反应警告,javascript,reactjs,Javascript,Reactjs,我下面的代码有什么问题?我有key={obj.\u id},我希望我不会看到警告,但我仍然得到它 警告:数组或迭代器中的每个子级都应具有唯一的“键” 道具请检查渲染方法 renderlitiems(项目){ 返回( {map(项目,obj=> {obj.display_name} 最后一次编辑时间为{moment(obj.updated_at).format('DD-MMM-YYYY')} 编辑 this.setState({openconfirmationmodel:true,selected
renderlitiems(项目){
返回(
{map(项目,obj=>
{obj.display_name}
最后一次编辑时间为{moment(obj.updated_at).format('DD-MMM-YYYY')}
编辑
this.setState({openconfirmationmodel:true,selectedItemId:obj.\u id,selectedItemName:obj.display\u name})大于Delete
)}
)
}
我认为您在编写一些错误的代码。您应该在数组上应用函数“map”
试试这个:
renderListItems(items){
return(
<div>
{items.map(obj =>
<div key={obj._id} className="panel-body panel-row">
<div className="row">
<div className="col-md-12">
<h2 className="title">{obj.display_name}</h2>
<p className="edited">Last edited on {moment(obj.updated_at).format('DD MMM YYYY')}</p>
<div className="actions_wrap">
<Link to={`/mall-promospace/edit/${obj._id}`}>Edit</Link>
<a onClick={()=> this.setState({openConfirmationModal:true, selectedItemId: obj._id, selectedItemName: obj.display_name})}>Delete</a>
</div>
</div>
</div>
</div>
)}
</div>
)
}
renderlitiems(项目){
返回(
{items.map(obj=>
{obj.display_name}
最后一次编辑时间为{moment(obj.updated_at).format('DD-MMM-YYYY')}
编辑
this.setState({openconfirmationmodel:true,selectedItemId:obj.\u id,selectedItemName:obj.display\u name})大于Delete
)}
)
}
我认为您在编写一些错误的代码。您应该在数组上应用函数“map”
试试这个:
renderListItems(items){
return(
<div>
{items.map(obj =>
<div key={obj._id} className="panel-body panel-row">
<div className="row">
<div className="col-md-12">
<h2 className="title">{obj.display_name}</h2>
<p className="edited">Last edited on {moment(obj.updated_at).format('DD MMM YYYY')}</p>
<div className="actions_wrap">
<Link to={`/mall-promospace/edit/${obj._id}`}>Edit</Link>
<a onClick={()=> this.setState({openConfirmationModal:true, selectedItemId: obj._id, selectedItemName: obj.display_name})}>Delete</a>
</div>
</div>
</div>
</div>
)}
</div>
)
}
renderlitiems(项目){
返回(
{items.map(obj=>
{obj.display_name}
最后一次编辑时间为{moment(obj.updated_at).format('DD-MMM-YYYY')}
编辑
this.setState({openconfirmationmodel:true,selectedItemId:obj.\u id,selectedItemName:obj.display\u name})大于Delete
)}
)
}
items.map((obj,i)=>)
items.map((obj,i)=>)
当然,第一个问题是“您确定您的_id字段是唯一的吗?”这段代码本身看起来很好,因此错误可能是由不同的迭代器生成的,也可能是两个或多个id重复了。@spokedcarp是的。我没有重复的ID。渲染方法是什么样子的?也许没什么错。。。但是错误确实指向了与问题中不同的方法…错误消息似乎不完整…应该是……检查…
的渲染方法。当然,第一个问题是“您确定您的_id字段是唯一的吗?”此代码本身看起来很好,因此,要么错误是由不同的迭代器生成的,要么两个或多个ID被复制了。@spheredcarp yes。我没有重复的ID。渲染方法是什么样子的?也许没什么错。。。但是错误确实指向了与问题中的方法不同的方法…错误消息似乎不完整…应该是……检查…
的渲染方法。
items.map((obj, i) => <div key={i}></div>)