- 我们只是为什么研究react是如何工作的,那么我们要减少项目不相关的其他依赖,比如webpack,jsx等,直击启动react的最基本需要。同时保证项目尽可能简单。
-
找出明确可执行切入点
-
ReactDOM.render -> legacyRenderSubtreeIntoContainer -> unbatchedUpdates -> updateContainer -> scheduleRootUpdate | -> enqueueUpdate(current$$1, update),用update更新current$$1.updateQueue的值 scheduleRootUpdate -> | | -> scheduleUpdateOnFiber -> renderRoot -> workLoopSync -> performUnitOfWork
调试技巧
- 函数的输入,函数的输出(修改非局部变量的属性,return值)