1
0
Fork 0
Browse Source

vault backup: 2022-03-29 15:54:34

master
YuJian 3 years ago
parent
commit
8606065b34
  1. 4
      随时随地/简单的 React 思考 - Context.md

4
随时随地/简单的 React 思考 - Context.md

@ -13,4 +13,6 @@ createContext 会创建一个 Context 对象,每个 Context 对象都会返回 @@ -13,4 +13,6 @@ createContext 会创建一个 Context 对象,每个 Context 对象都会返回
<MyContext.Provider value={value} />
```
订阅了这个 Context 的组件会在组件树中查找离自己最近的 Provider 中读取到 Context 值,只有在找不到 Provider 时,defaultValue 参数才会生效,但是将 underfined 传递给 Provider 的时候,defaultValue 并不会生效
订阅了 Context 的组件会在组件树中查找离自己最近的 Provider 中读取到 Context 值也就是 Provider 中的 value 属性,只有在找不到 Provider 时,createContext 中的 defaultValue 参数才会生效,但是将 underfined 传递给 Provider 的时候,defaultValue 并不会生效。
多个 Provider 可以嵌套使用,里层的会覆盖外层的数据。
当 Provider 中的 value 值发生变化时,它内部的所有消费组件也就是子组件都会重新渲染,这个用于判断值是否发生变化的方法和 Object.is 使用了同样的算法, ye'jiu'sh
Loading…
Cancel
Save