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
相关推荐
意法半导体STM32几秒前
【官方原创】STM32H7双核芯片通过 STlink连接失败问题分析 LAT1654
开发语言·前端·javascript·stm32·单片机·嵌入式硬件
小王C语言2 分钟前
【基础IO】————简单设计一下libc库
前端·数据结构·算法
雨雨雨雨雨别下啦14 分钟前
Vue3——RabbitShopping
前端·javascript·vue.js
BumBle18 分钟前
从声明式到命令式:Vue3 弹窗组件的工厂模式重构
前端
恋猫de小郭25 分钟前
你的蓝牙设备可能正在泄漏你的隐私? Bluehood 如何追踪附近设备并做隐私分析
android·前端·ios
丝斯20111 小时前
AI学习笔记整理(79)——Python学习8
人工智能·笔记·学习
取名不易1 小时前
vue-drawer-board 简单的画图功能
前端
学习指针路上的小学渣1 小时前
JavaScript笔记
前端·javascript
取名不易1 小时前
在 nuxtjs中通过fabric.js实现画图功能
前端
冰珊孤雪2 小时前
Android Studio Panda革命性升级:内存诊断、构建标准化与AI调试全解析
android·前端