React源码深度解析 高级前端工程师必备技能

#1

103045fj80s1li7oo7jknj

React源码深度解析 高级前端工程师必备技能超清原画完整无密点击下载

React毫无疑问是前端界主流的框架,而框架本身就是热点。课程以讲解React实现原理为主,并在实现过程中讲解这么做的原因,带来的好处以及规避了哪些问题。理解源码之后对于React开发过程中出现的一系列问题都可以非常轻松得进行解决,也是能力提升,晋升高级开发工程师的必备技能。

适合人群
有一定前端基础和 React.js 的基础
技术储备要求
1、已经用过 React.js 做过 2 个以上的实际项目,对 React.js 的思想
有了一定的了解,对绝大部分的 API 都已经有使用。
2、有一定的原生 JavaScript 的功底,并对代码调试有一定的了解。
3、对常用的数据结构、正则表达式等都有一定了解。

课程目录:

第1章 课程导学

对课程整体进行讲解。

1-1 课程导学 试看

第2章 基础知识 React API 一览

React主要API介绍,在这里你能了解它的用法,为下一章源码分析打基础。

2-1 准备工作 试看

2-2 JSX到JavaScript的转换

2-3 react-element

2-4 react-component

2-5 react-ref

2-6 forward-ref

2-7 context

2-8 concurrent-mode

2-9 suspense-and-lazy

2-10 hooks

2-11 children

2-12 others

第3章 React中的更新

主要讲解React创建更新中的主要两种方式ReactDOM.render和setState,他们具体做了什么。

3-1 react-dom-render 试看

3-2 react-fiber-root

3-3 react-fiber

3-4 react-update-and-updateQueue

3-5 react-expiration-time

3-6 different-expirtation-time

3-7 react-setState-forceUpdate

第4章 Fiber Scheduler

创建更新之后,找到Root然后进入调度,同步和异步操作完全不同,实现更新分片的性能优化。

4-1 总结流程概览

4-2 scheduleWork

4-3 requestWork

4-4 batchedUpdates

4-5 reactScheduler(1)

4-6 reactScheduler(2)

4-7 reactScheduler(3)

4-8 reactScheduler(4)

4-9 performWork

4-10 renderRoot

4-11 最后补充

第5章 各类组件的Update

讲解10多种不同类型的组件的更新过程,以及如何遍历节点形成新的Fiber树

5-1 入口和优化

5-2 FunctionalComponent的更新

5-3 reconcilerChildren

5-4 reconcilerChildren-array

5-5 updateClassComponent

5-6 ClassComponent的更新

5-7 IndeterminateComponent组件类型和其更新过程

5-8 HostRoot的更新

5-9 HostComponent和HostText的更新

5-10 Poratl组件的更新

5-11 ForwardRef的更新

5-12 Mode组件的更新

5-13 Memo组件的更新

第6章 完成节点任务

完成节点更新之后完成节点的创建,并提供优化到最小幅度的DOM更新列表

6-1 completeUnitOfWork的整体流程和意义

6-2 重设childExpirationTime

6-3 completWork具体做了什么

6-4 初次渲染中completeWork对于DOM节点的创建和appendAllChild算法

6-5 初次渲染中如何进行DOM节点属性初始化操作

6-6 更新DOM时进行的diff判断

6-7 completeWork阶段对于HostText的更新

6-8 renderRoot中对于错误的处理

6-9 unwindWork以及React中的错误处理

第7章 commitRoot

根据更新列表最小幅度的改变DOM,实现UI的更新。

7-1 commitRoot的总体工作内容

7-2 invokeGuardedCallback开发时的帮助方法

7-3 commitRoot第一个操作-获取快照

7-4 commitAllHostEffects总体做了哪些事情

7-5 commitPlacement插入新的子节点的操作

7-6 commitWork更新节点属性的过程

7-7 commitWork删除节点的操作过程

7-8 commitLifecycles调用生命周期方法

第8章 功能详解:基础

各种贯穿于更新和提交阶段的功能,他们在哪里发挥作用,又是如何实现功能的

8-1 context-stack

8-2 遗留context-api的实现过程(1)

8-3 遗留context-api的实现过程(2)

8-4 新context的实现

8-5 ref的实现过程

8-6 hydrate-是否需要hydrate的判断

8-7 hydrate-更新开始判断节点是否可以hydrate

8-8 hydrate-再completeWork中复用可hydrate的节点

8-9 event事件系统初始化-注入平台事件插件

8-10 event事件监听的过程

8-11 event-事件触发的过程

8-12 event-事件对象的生产过程

8-13 event查漏补缺

第9章 suspense and priority

Suspense作为下一个React的杀手功能,他又是如何实现异步渲染的呢?

9-1 优先级和任务挂起的含义(1)

9-2 优先级和任务挂起的含义(2)

9-3 两个expirationTime的不同作用

9-4 Suspense组件同步模式下的更新

9-5 Suspense组件同步渲染模式补充

9-6 Suspense组件异步模式下的更新

9-7 retrySuspendedWork所做的事情

第10章 功能详解:Hooks

Hooks颠覆原先的React组件开发模式,提供更小粒度的更新以及更加适合解耦的API。

10-1 什么是Hooks以及他的用法

10-2 Hooks的定义以及执行前后的准备和重置

10-3 useState的实现原理和注意事项(1)

10-4 useState的实现原理和注意事项(2)

10-5 useEffect和useLayoutEffect的实现原理和区别

10-6 其他Hooks的实现

第11章 课程总结

对课程整体进行回顾,以及总结。

11-1 课程总结

本课程已完结第1章 课程导学
网盘链接下载