【发布时间】:2016-04-28 09:18:27
【问题描述】:
在早期版本的 React 中,我记得在没有为每个项目指定唯一 key 的情况下渲染数组时收到警告:
render() {
return (
<div>
{this.props.items.map(item => <span>{item.text}</span>)}
</div>
);
}
我了解,建议在呈现动态项目列表(可以添加或删除项目)时指定键,以帮助协调算法。我想了解:
- 为什么 React 在缺少键时不再发出警告?
- 对于静态列表,指定项键是否有值?
官方指点将不胜感激。
【问题讨论】:
-
而且错误依旧存在jsfiddle.net/t0n6393r
-
错误依然存在。如果您没有看到此警告,可能您正在生产环境中运行?
-
是否有可能 OP 正在编译他的代码以用于生产,从而消除了调试代码?
-
@JohnnyMagrippis,是的。很确定这里就是这种情况。在从 0.14 > 15 升级期间,他可能也开启了生产,也许是偶然的。
标签: reactjs