React源码结构
react
: 包含React的核心模块代码,比如React.createElement
、React.Component
、React.Children
react-reconciler
: diff算法,协调器的实现scheduler
: 调度器react-dom
: 宿主环境相关的包shared
: 公共辅助方法,与宿主环境无关
流程概述
- 发生内容更新
Scheduler
: 进行调度,执行Reconciler
任务Reconciler
: 进行diff比较,计算出更新的内容,然后交给Scheduler
->找时机进行Render
的调度Render
: 进行DOM的更新渲染
react
jsx格式
转换为React.createElment()/jsx方法/jsxDev方法