Context 是 React 提供的跨层级数据传递机制,用于避免 props drilling,由 createContext、Provider 和 useContext 三部分组成,需谨慎使用以防性能问题。

JavaScript 本身没有原生的 Context API,这个概念是 React 框架提供的高级特性,用于跨层级组件之间安全、高效地传递数据,避免“props drilling”(层层透传 props)。它不是浏览器或 JS 引擎的标准 API,而是 React 的内置机制。
Context 是什么?为什么需要它?
当多个嵌套组件都需要访问同一个数据(比如用户登录状态、主题色、语言偏好),如果每次都通过 props 一层层往下传,代码会变得冗长、脆弱且难以维护。Context 就是为了解决这个问题:它创建一个“数据通道”,让任意后代组件都能订阅并使用这个数据,且在数据变化时自动更新。
它由三部分组成:
-
React.createContext():创建一个 context 对象(含
Provider和Consumer,新版推荐用useContext) - Context.Provider:包裹组件树,提供共享值(value)
- useContext() Hook:在函数组件中读取 context 值(必须在 Provider 内部调用)
基本用法:三步走
以「主题色」为例:
立即学习“Java免费学习笔记(深入)”;
标签: react javascript java js 浏览器 app ai 作用域 为什么
还木有评论哦,快来抢沙发吧~