import React, { useContext, useState } from 'react'
// 创建一个context上下文,通过Provider向下层组件传递,下层组件使用useContext接受上层组件提供的value属性
// context上下文应用下层组件中的父子组件通信比较常见
const MyContext = React.createContext()
function Count() {
const { count, setCount } = useContext(MyContext)
return <button onClick={ () => setCount(count + 1) }>改变计数使其每次点击加 1 </button>
}
function GetCount() {
// useContext必须接受一个context对象
const context = useContext(MyContext)
return <p>得到计算结果:{context.count}</p>
}
export default function App() {
const [count, setCount] = useState(0)
// 通过Provider的 value 向下层组件提供 参数
return <MyContext.Provider value={{ count, setCount }}>
<Count />
<GetCount />
</MyContext.Provider>
}
hooks中的 useContext
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- context api是简化版的redux,他没有redux强大生态体系,结合各自中间件例如thunk或saga,...
- React 官方有说建议使用Hooks来管理你的项目,不过React 也说过不会放弃Class,网上说了一堆Hoo...