2.3 JSX转换Element对象流程
2.3.1 createElement原理揭秘
createElement做的事情大致可以分为:
初始化参数,比如props、key、ref等
单独处理key和ref属性,处理props里面的其他属性
形成Children结构的数组
通过ReactElement创建Element对象并返回
ReactElement作为一个纯函数,做的事情很简单,就是根据传进来的参数,创建斌返回一个Element对象
2.3.2 closeElement属性揭秘
原理与createElement差不多,区别在于:
closeElement会复用Element的type、key、ref等关键属性
closeElement会通过assign把原来的Element props和新的props进行合并处理
最后更新于