From ac7f1f4a8004858f9f388ec369b3c68e03a1c365 Mon Sep 17 00:00:00 2001 From: YuJian Date: Tue, 29 Mar 2022 15:59:34 +0800 Subject: [PATCH] vault backup: 2022-03-29 15:59:34 --- .obsidian/workspace | 4 ++-- 随时随地/简单的 React 思考 - Context.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.obsidian/workspace b/.obsidian/workspace index 225513c..2ebb1ee 100644 --- a/.obsidian/workspace +++ b/.obsidian/workspace @@ -90,9 +90,9 @@ "active": "1508f46ea2481b37", "lastOpenFiles": [ "随时随地/简单的 React 思考 - Context.md", - "随时随地/简单的 React 思考 - Fiber 创建.md", - "基于 React Hook 开发的 Jira 系统/React 状态管理工具的简单思考.md", "随时随地/简单的 React 思考 - Hook.md", + "基于 React Hook 开发的 Jira 系统/React 状态管理工具的简单思考.md", + "随时随地/简单的 React 思考 - Fiber 创建.md", "随时随地/React Hooks 的碎片记录.md", "随时随地/useEffect 和 Debounce.md", "随时随地/奇怪的疑惑.md", diff --git a/随时随地/简单的 React 思考 - Context.md b/随时随地/简单的 React 思考 - Context.md index 89a4228..447bbd8 100644 --- a/随时随地/简单的 React 思考 - Context.md +++ b/随时随地/简单的 React 思考 - Context.md @@ -15,4 +15,4 @@ createContext 会创建一个 Context 对象,每个 Context 对象都会返回 订阅了 Context 的组件会在组件树中查找离自己最近的 Provider 中读取到 Context 值也就是 Provider 中的 value 属性,只有在找不到 Provider 时,createContext 中的 defaultValue 参数才会生效,但是将 underfined 传递给 Provider 的时候,defaultValue 并不会生效。 多个 Provider 可以嵌套使用,里层的会覆盖外层的数据。 -当 Provider 中的 value 值发生变化时,它内部的所有消费组件也就是子组件都会重新渲染,这个用于判断值是否发生变化的方法和 Object.is 使用了同样的算法, ye'jiu'sh \ No newline at end of file +当 Provider 中的 value 值发生变化时,它内部的所有消费组件也就是子组件都会重新渲染,这个用于判断值是否发生变化的方法和 Object.is 使用了同样的算法, 也就是说如果 value 是一个引用类型,可能会导致一些意外的问题 \ No newline at end of file