# mono-react **Repository Path**: golong/mono-react ## Basic Information - **Project Name**: mono-react - **Description**: Create React from zero series - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-06 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 从零开始开发一个 React ------------------------------------ Warning: 网上有一个非常好的[同类教程](https://pomb.us/build-your-own-react/),因此本仓库**不再维护**。 强烈建议大家直接看那个,不仅从质量和更新速度上都很Nice。 ----------------------------------- 为了加深自己对 React 理解,同时也能帮助到其他想要深入理解 React 原理的同学。 我开了这样的一个仓库。 这个仓库分为两部分,一部分是项目主体,也就是 master 分支。这部分保持最新的代码,并尽可能实现 React 的新特性。 另一部分是供大家学习的部分,分支名称以 lecture 开头,大家可以切换到对应分支,查看相应特性的代码和课程介绍。 课程目录见后面`课程列表部分`。 大家也可以通过 [github commit](https://github.com/azl397985856/mono-react/commits/master) 功能进行比较,查看代码的变更。 ## 先行知识 学习这个课程之前呢,需要各位对 React 的 API 有一定的了解。 > 如果完全不了解的话,不建议您继续往下看。 如果你已经具备了相关 React 的知识,那么就让我们开始吧! ## 开始学习 如果你想学习的话,请切换到对应分支。 比如你想学习第一课,就切换到 lecture/part1 分支 ,想学习第二课,就切换到 lecture/part2 分支,依次类推。 ### 课程列表 现在已经完成了 1-5 章内容的草稿,并计划在 2018-07 月份进行完善和纠错。 其他章节部分计划八月份实现。如果你特别感兴趣,请在 issue 区域留言,也许会提前也不一定。 > 草稿,随时可能变更 1. [最简单的实现,包括 vdom 结构,createElement,ReactDOM.render](https://github.com/azl397985856/mono-react/tree/lecture/part1) 2. [增加 Class 的支持](https://github.com/azl397985856/mono-react/tree/lecture/part2) 3. [增加 JSX 的支持](https://github.com/azl397985856/mono-react/tree/lecture/part3) 4. [增加 state 支持](https://github.com/azl397985856/mono-react/tree/lecture/part4) 5. [增加声明周期](https://github.com/azl397985856/mono-react/tree/lecture/part5) 6. [增加 dom-diff(调和算法)](https://github.com/azl397985856/mono-react/tree/lecture/part6) 7. [增加 context api](https://github.com/azl397985856/mono-react/tree/lecture/part7) 8. 增加 ref 支持 9. 增加 PureComponent ...未完待续 ## Licence MIT