4.react useContext使用与常见问题

复制代码
1. 在函数组件实现跨组件通信的方式
2. 注册Context将value传递给子组件

let MyContext = React.createContext('默认值');
<MyContext.Provider value={} >
let value = useContext(MyContext)
html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style></style>
  <script src="../react.development.js"></script>
  <script src="../react-dom.development.js"></script>
  <script src="../babel.min.js"></script>
  <script src="../lodash.min.js"></script>
</head>

<body>
  <div id="app"></div>
  <script type="text/babel">
    // 实现三层组件的跨组件通信
    let Welcome = (props) => {  
      return (
        <div>
          hello Welcome
          <MyContext.Provider value="welcome的问候~~~">
            <Head />
          </MyContext.Provider>
        </div>
      );
    }
    let Head = () => {
      return (
        <div>
          hello Head
          <Title />
        </div>
      );
    }
    let Title = () => {
      let value = useContext(MyContext);
      return (
        <div>
          hello Title, { value }
        </div>
      );
    }
    
    let element = (
      <Welcome />
    );
    root.render(element);
  </script>
</body>

</html>
相关推荐
UIUV15 小时前
模块化CSS学习笔记:从作用域问题到实战解决方案
前端·javascript·react.js
Kakarotto15 小时前
使用ThreeJS绘制东方明珠塔模型
前端·javascript·vue.js
donecoding15 小时前
TypeScript `satisfies` 的核心价值:两个例子讲清楚
前端·javascript
Van_Moonlight15 小时前
RN for OpenHarmony 实战 TodoList 项目:顶部导航栏
javascript·开源·harmonyos
技术狂小子15 小时前
前端开发中那些看似微不足道却影响体验的细节
javascript
用户120391129472615 小时前
使用 Tailwind CSS 构建现代登录页面:从 Vite 配置到 React 交互细节
前端·javascript·react.js
阿珊和她的猫15 小时前
React Hooks:革新组件开发的优势与实践
前端·react.js·状态模式
花归去16 小时前
echarts 柱状图曲线图
开发语言·前端·javascript
老前端的功夫16 小时前
TypeScript 类型魔术:模板字面量类型的深层解密与工程实践
前端·javascript·ubuntu·架构·typescript·前端框架
Nan_Shu_61416 小时前
学习: Threejs (2)
前端·javascript·学习