react之useContext

1. src文件夹下新建ctx/index.jsx

复制代码
import { createContext } from 'react'

const Ctx = createContext({
  name: '',
  age: ''
})

export default Ctx

2. 在提供数据的组件使用Ctx.Provider组件包裹要接收数据的组件,并使用value值提供数据

复制代码
import A from './A'
import Ctx from './ctx'
function App() {
  return (
    <Ctx.Provider value={{ name: '张三', age: 18 }}>
      <div>我是App组件</div>
      <A />
    </Ctx.Provider>
  )
}

export default App

3. 在接收数据的组件,使用useContext钩子,获取ctx的数据,切记要把ctx/index.jsx文件夹下暴露出来的ctx传入到useContext中

复制代码
import Ctx from './ctx'
import { useContext } from 'react'
const C = () => {
  const ctx = useContext(Ctx)
  return (
    <>
      <div>我是C组件</div>
      <div>姓名:{ctx.name}</div>
      <div>年龄:{ctx.age}</div>
    </>
  )
}

export default C
相关推荐
Ferries6 分钟前
《从前端到 Agent》系列|03:应用层-RAG(检索增强生成,Retrieval-Augmented Generation)
前端·人工智能·机器学习
Jessica_Lee10 分钟前
Openclaw智能体终止机制
javascript
米丘12 分钟前
Connect 深度解析:Node.js 中间件框架的基石
javascript·http·node.js
饺子不吃醋13 分钟前
执行上下文:变量提升、作用域与 this 底层机制
javascript
菲利普马洛15 分钟前
记一次主题闪烁问题
前端·css·react.js
谁在黄金彼岸16 分钟前
nvm for windows之死:别再被这个“过时工具”耽误开发
前端
汉堡大王952717 分钟前
为了搞懂 Promise 源码,我重写了 MiniPromise
前端·javascript
臧玉波18 分钟前
一文读懂 JS 原型链
javascript
llq_35018 分钟前
使用 devServer Proxy 本地开发 POST 请求跨域报错问题及解决方案
前端
孙凯亮20 分钟前
前端DICOM Viewer开发避坑指南:从入门到实战(含切片、3D、标注全解析)
前端