React 学习——Context机制层级组件通信

核心思路:(适用于所有层级,不仅仅是爷孙 父子)

  1. createContext方法创建一个上下文对象
  2. 在顶层组件 通过Provider组件提供数据
  3. 在底层组件,通过useContext钩子函数使用数据
javascript 复制代码
import { createContext, useContext  } from "react"
const msgContext = createContext();
function A(){
  const AMsg = '我是A组件的消息'
  return (
    <div>
      A组件
      <B />
    </div>
  )
}
function B(){
  const bMsg = useContext(msgContext)
  return (
    <div>
      B组件-{bMsg}
    </div>
  )
}

function App(){
  const msg = 'this is App组件'
  return (
    <div>
      App组件
      <msgContext.Provider value={msg}>
        <A />
      </msgContext.Provider>
    </div>

  )
}
export default App
相关推荐
Csvn32 分钟前
运行时性能
前端
Never_every991 小时前
位图转矢量工具哪个好?实测抠抠图AI位图转矢量工具
大数据·前端
paopaokaka_luck2 小时前
宠物门店经营管理系统(销售与库存联动、进货自动记账、 退换与退款关联、员工个人业绩、ECharts 经营分析、滞销识别与客户分层、宠物档案年龄计算)
前端·javascript·spring boot·mysql·echarts·mybatis·1024程序员节
andrsted2 小时前
练题簿在线免费刷题:让整理过的资料,变成能反复练习的题库
学习·微信小程序·小程序·学习方法·刷题·1024程序员节
空中湖2 小时前
用 React 写数据大屏:为什么我不建议用图表库
前端·react.js·前端框架
Alsn863 小时前
Windows 安装 Ollama 及本地模型部署
学习·1024程序员节
欣欣之王来了4 小时前
原始HTML插值:v-html指令的使用与安全风险
前端·学习·架构·项目·vue3教程
IT_陈寒4 小时前
Redis的LRU淘汰策略坑了我一整天
前端·人工智能·后端
计算机魔术师4 小时前
砍半价格、参数再涨,国产旗舰追到 Opus 鼻尖了
前端
特立独行的猫A4 小时前
10 MB 的桌面 AI 客户端:用仓颉 + 系统 WebView 替代 Electron
前端·harmonyos