diff --git a/docs/concurrent/prepare.md b/docs/concurrent/prepare.md index 2987a84..dc56d38 100644 --- a/docs/concurrent/prepare.md +++ b/docs/concurrent/prepare.md @@ -28,7 +28,7 @@ 但是当我们配合`时间切片`,就能根据宿主环境性能,为每个`工作单元`分配一个`可运行时间`,实现“异步可中断的更新”。 -于是,[scheduler](https://github.com/facebook/react/tree/master/packages/scheduler)(调度器)产生了。 +于是,[scheduler](https://github.com/facebook/react/tree/main/packages/scheduler)(调度器)产生了。 ## 架构运行策略 —— lane模型 diff --git a/docs/preparation/file.md b/docs/preparation/file.md index f2bb946..cd4d91f 100644 --- a/docs/preparation/file.md +++ b/docs/preparation/file.md @@ -23,7 +23,7 @@ 目录下的文件夹非常多,我们来看下: -### [react](https://github.com/facebook/react/tree/master/packages/react)文件夹 +### [react](https://github.com/facebook/react/tree/main/packages/react)文件夹 React的核心,包含所有全局 React API,如: @@ -33,11 +33,11 @@ React的核心,包含所有全局 React API,如: 这些 API 是全平台通用的,它不包含`ReactDOM`、`ReactNative`等平台特定的代码。在 NPM 上作为[单独的一个包](https://www.npmjs.com/package/react)发布。 -### [scheduler](https://github.com/facebook/react/tree/master/packages/scheduler)文件夹 +### [scheduler](https://github.com/facebook/react/tree/main/packages/scheduler)文件夹 Scheduler(调度器)的实现。 -### [shared](https://github.com/facebook/react/tree/master/packages/shared)文件夹 +### [shared](https://github.com/facebook/react/tree/main/packages/shared)文件夹 源码中其他模块公用的**方法**和**全局变量**,比如在[shared/ReactSymbols.js](https://github.com/facebook/react/blob/1fb18e22ae66fdb1dc127347e169e73948778e5a/packages/shared/ReactSymbols.js)中保存`React`不同组件类型的定义。 @@ -84,7 +84,7 @@ export let REACT_FRAGMENT_TYPE = 0xeacb; - react-refresh # “热重载”的React官方实现 ``` -### [react-reconciler](https://github.com/facebook/react/tree/master/packages/react-reconciler)文件夹 +### [react-reconciler](https://github.com/facebook/react/tree/main/packages/react-reconciler)文件夹 我们需要重点关注**react-reconciler**,在接下来源码学习中 80%的代码量都来自这个包。 diff --git a/docs/preparation/source.md b/docs/preparation/source.md index 5351d1e..a184c54 100644 --- a/docs/preparation/source.md +++ b/docs/preparation/source.md @@ -1,12 +1,12 @@ 了解了源码的文件目录,这一节我们看看如何调试源码。 -即使版本号相同(当前最新版为`17.0.0 RC`),但是`facebook/react`项目`master`分支的代码和我们使用`create-react-app`创建的项目`node_modules`下的`react`项目代码还是有些区别。 +即使版本号相同(当前最新版为`17.0.0 RC`),但是`facebook/react`项目`main`分支的代码和我们使用`create-react-app`创建的项目`node_modules`下的`react`项目代码还是有些区别。 -因为`React`的新代码都是直接提交到`master`分支,而`create-react-app`内的`react`使用的是稳定版的包。 +因为`React`的新代码都是直接提交到`main`分支,而`create-react-app`内的`react`使用的是稳定版的包。 为了始终使用最新版`React`教学,我们调试源码遵循以下步骤: -1. 从`facebook/react`项目`master`分支拉取最新源码 +1. 从`facebook/react`项目`main`分支拉取最新源码 2. 基于最新源码构建`react`、`scheduler`、`react-dom`三个包 3. 通过`create-react-app`创建测试项目,并使用步骤2创建的包作为项目依赖的包 diff --git a/docs/state/mental.md b/docs/state/mental.md index 0c7de83..50bea1a 100644 --- a/docs/state/mental.md +++ b/docs/state/mental.md @@ -18,7 +18,7 @@ ## 并发更新的React -当有了`代码版本控制`,有紧急线上bug需要修复时,我们暂存当前分支的修改,在`master分支`修复bug并紧急上线。 +当有了`代码版本控制`,有紧急线上bug需要修复时,我们暂存当前分支的修改,在`main分支`修复bug并紧急上线。 流程2 diff --git a/docs/state/update.md b/docs/state/update.md index ff310de..f1bae4c 100644 --- a/docs/state/update.md +++ b/docs/state/update.md @@ -135,7 +135,7 @@ const queue: UpdateQueue = { - baseState:本次更新前该`Fiber节点`的`state`,`Update`基于该`state`计算更新后的`state`。 -> 你可以将`baseState`类比`心智模型`中的`master分支`。 +> 你可以将`baseState`类比`心智模型`中的`main分支`。 - `firstBaseUpdate`与`lastBaseUpdate`:本次更新前该`Fiber节点`已保存的`Update`。以链表形式存在,链表头为`firstBaseUpdate`,链表尾为`lastBaseUpdate`。之所以在更新产生前该`Fiber节点`内就存在`Update`,是由于某些`Update`优先级较低所以在上次`render阶段`由`Update`计算`state`时被跳过。