React 处理重复事务时,子元素应有KEY

示例场景

浏览器警告如下信息:
Each child in an array or iterator should have a unique "key" prop.

示例方案

 let tasks = this.props.tasks.map((task) => (
        <li className="checklist_task" key={task.id}>
            <input type="checkbox" defaultChecked={task.done}/>
            {task.name}
            <a href="#" className="checklist_task--remove"></a>
        </li>
    ));

每个li元素都赋予一个唯一的标识。

为何这样做

React在处理重复条目时,虚拟DOM难以处理。考虑这样的情况:将一个列表转换为另一个列表的最佳方案是什么?在数量达到一定大小的列表中,有很多种可行的方案,每一种都可能导致副作用。考虑到节点插入、删除、替换和移动等操作会花费大量时间,React引入key用于在进行上述节点操作时能够快速定位到目标节点。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容