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
相关推荐
小简GoGo4 分钟前
前端常用设计模式快速入门
javascript·设计模式
做科研的周师兄6 分钟前
【MATLAB 实战】|多波段栅格数据提取部分波段均值——批量处理(NoData 修正 + 地理信息保真)_后附完整代码
前端·算法·机器学习·matlab·均值算法·分类·数据挖掘
da_vinci_x12 分钟前
图标量产:从“手绘地狱”到“风格克隆”?Style Reference 的工业化实战
前端·游戏·ui·prompt·aigc·设计师·游戏美术
利刃大大19 分钟前
【ES6】变量与常量 && 模板字符串 && 对象 && 解构赋值 && 箭头函数 && 数组 && 扩展运算符 && Promise/Await/Async
开发语言·前端·javascript·es6
天若有情67323 分钟前
ES6 模块与 CommonJS 的区别详解
前端·javascript·es6
大猫会长25 分钟前
postgreSQL中,RLS的using与with check
开发语言·前端·javascript
摘星编程34 分钟前
React Native for OpenHarmony 实战:ProgressBar 进度条详解
javascript·react native·react.js
慧一居士37 分钟前
vite.config.ts 配置使用说明,完整配置示例
前端
wusp199444 分钟前
nuxt3模块化API架构
前端·javascript·nuxt3
沛沛老爹1 小时前
Web开发者进阶AI:企业级Agent Skills安全策略与合规架构实战
前端·人工智能·架构