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
相关推荐
Slow菜鸟8 小时前
AI学习篇(五) | awesome-design-md 使用说明
人工智能·学习
ZC跨境爬虫8 小时前
跟着 MDN 学 HTML day_9:(信件语义标记)
前端·css·笔记·ui·html
前端老石人9 小时前
HTML 字符引用完全指南
开发语言·前端·html
幼儿园技术家9 小时前
前端如何设计权限系统(RBAC / ABAC)?
前端
狐狐生风9 小时前
LangChain 向量存储:Chroma、FAISS
人工智能·python·学习·langchain·faiss·agentai
狐狐生风9 小时前
LangChain RAG 基础
人工智能·python·学习·langchain·rag·agentai
前端摸鱼匠10 小时前
Vue 3 的v-bind合并行为:讲解v-bind与普通属性合并的规则
前端·javascript·vue.js·前端框架·ecmascript
REDcker11 小时前
浏览器端Web程序性能分析与优化实战 DevTools指标与工程清单
开发语言·前端·javascript·vue·ecmascript·php·js
努力努力再努力FFF12 小时前
医生对AI辅助诊断感兴趣,作为临床人员该怎么了解和学习?
人工智能·学习
donecoding12 小时前
一个 sudo 引发的血案:npm 全局包权限错乱彻底修复
前端·node.js·前端工程化