我正在使用React(版本15.4.2),我正在<ul>用我的数据库中的查询结果动态填充.我以为我已经在<li>s上正确设置了'key'属性,但显然我没有 - 当列表呈现时,我得到错误:
警告:li:'key'不是道具.尝试访问它将导致返回"未定义".如果需要在子组件中访问相同的值,则应将其作为不同的prop传递.
这是我的列表的代码:
function UserList(props) {
return(
<ul className="UserList">
{
props.user_list.map((user) => (
<li className="UserListItem" key={user.id}>
<Link to={`/users/${user.id}`}>{user.first_name} {user.last_name}</Link>
</li>
))
}
</ul>
);
}
Run Code Online (Sandbox Code Playgroud)
我看了一下这些文档,在我看来这应该是正确的.如果有人能澄清我的错误,我将不胜感激.
你可以将 li 包装在 React 片段中,例如
{props.user_list.map((user, index) => (
<React.Fragment key={index}>
<li className="UserListItem" >
<Link to={`/users/${user.id}`}>{user.first_name} {user.last_name}</Link>
</li>
</React.Fragment>
))
}Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4943 次 |
| 最近记录: |