key值既然是做diff用的,为什么不在内部生成虚拟dom的时候让React来给key赋值,而是把key抛出来,让在调用组件的时候赋值?

来源:4-6 虚拟 DOM 中的 Diff 算法

963601654

2018-08-05

写回答

1回答

邵林

2018-08-05

说一下我的观点(嘻嘻):我觉得key属性的使用场景最多的应该是由数组动态创建的子组件的情况,如果是由内部赋值那么这个key值对我们来说可能是不可见的,对于内部来说或许react能通过key值来找到对应组件,但是对我们来说我们或许是不知道的,
当存在某个应用场景需要我们能通过key值来进行对应子组件的操作的时候,我们就无法确定这个对应关系了,所以把key抛出来并合理赋值就有它的意义所在了。
0
0

React零基础入门到实战,完成企业级项目简书网站开发

主流新技术 React-redux,React-router4,贯穿基础语法

5275 学习 · 2496 问题

查看课程