200行代码实现 mini-React

介绍

为了加深本身对 React 理解,同时也能帮助到其余想要深刻理解 React 原理的同窗。 我写了这篇文章并开了一个仓库。全部的代码均可以在这个仓库找到,具体使用方法,请查看README。react

目前实现的功能包含纯函数支持,class支持,state支持,生命周期支持,jsx支持(这个并不能说是mini-react支持)。 后续内容持续更新中git

我给他命名为 mono-reactgithub

先行知识

学习这个课程以前呢,须要各位对 React 的 API 有必定的了解。算法

若是彻底不了解的话,不建议您继续往下看。api

若是你已经具有了相关 React 的知识,那么就让咱们开始吧!dom

开始学习

若是你想学习的话,请切换到对应分支。函数

好比你想学习第一课,就切换到 lecture/part1 分支 ,想学习第二课,就切换到 lecture/part2 分支,依次类推。post

课程列表

如今已经完成了 1-5 章内容的草稿,并计划在 2018-07 月份进行完善和纠错。 其余章节部分计划八月份实现。若是你特别感兴趣,请在 issue 区域留言,也许会提早也不必定。学习

草稿,随时可能变动code

  1. 最简单的实现,包括 vdom 结构,createElement,ReactDOM.render

  2. 增长 Class 的支持

  3. 增长 JSX 的支持

  4. 增长 state 支持

  5. 增长声明周期

  6. 增长 dom-diff(调和算法)

  7. 增长 context api

  8. 增长 ref 支持

  9. 增长 PureComponent

...未完待续

相关文章
相关标签/搜索