React通过useContext特性实现组件数据传递

 更新时间:2023年06月28日 10:44:38   作者:-耿瑞-  
本文主要介绍了React如何通过useContext特性实现组件数据传递,文中有相关的代码示例供大家参考,对我们学习React有一定的帮助,需要的朋友可以参考下

我们来说一个属性 useContext
这个确实用的挺少的 不过 还是简单做一下
打开我们的react项目 在src下创建一个文件夹 components 因为他是两个 甚至多个组件之间使用的
然后在components下创建两个组件 分别叫 dom.jsx dom1.jsx 命名命的比较不规范 不过本身只是做个案例 懒得做那么规范了

dom.jsx 我们作为父组件 编写代码如下

import React from "react";
import Daom1 from "./dom1";
export const MyComponent = React.createContext();
const dom = () => {
  return (
    <div>
      <MyComponent.Provider value="hello dom1">
        <Daom1 />
      </MyComponent.Provider>
    </div>
  );
};
export default React.memo(dom);

这里 我们通过MyComponent.Provider中vulue 定义了个数据 值是字符串类型的 hello dom1
然后调用了 我们的 dom1 组件 作为自己的子组件

然后 我们dom1 代码编写如下

import React, { useContext } from "react";
import { MyComponent } from "./dom";
const Dom1 = () => {
  const contextValue = useContext(MyComponent);
  return (
    <div>
      <h1>{contextValue}</h1>
    </div>
  );
};
export default React.memo(Dom1);

获取 同目录dom1组件中导出的 MyComponent 对象 通过useContext输出其中的值

然后 在App根组件中调用dom.jsx组件

项目运行结果如下

可以看到 dom MyComponent.Provider value 中定义的值 然后在 dom1中获取 在h1中显示 整个过程非常完美 不过这个数据共享方案老实说 挺捞的 用的会少一些 因为限制很多 也不知道实用

到此这篇关于React通过useContext特性实现组件数据传递的文章就介绍到这了,更多相关React useContext数据传递内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 聊聊jenkins部署vue/react项目的问题

    聊聊jenkins部署vue/react项目的问题

    本文给大家介绍了jenkins部署vue/react项目的问题,文末给大家提到了centOS安装jenkins的脚本,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2022-02-02
  • ForwardRef useImperativeHandle方法demo

    ForwardRef useImperativeHandle方法demo

    这篇文章主要为大家介绍了ForwardRef useImperativeHandle方法demo,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • React中使用TS完成父组件调用子组件的操作方法

    React中使用TS完成父组件调用子组件的操作方法

    由于在项目开发过程中,我们往往时需要调用子组件中的方法,这篇文章主要介绍了React中使用TS完成父组件调用子组件,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • React Router V5:使用HOC组件实现路由拦截功能

    React Router V5:使用HOC组件实现路由拦截功能

    这篇文章主要介绍了React Router V5:使用HOC组件实现路由拦截功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • 关于react-router/react-router-dom v4 history不能访问问题的解决

    关于react-router/react-router-dom v4 history不能访问问题的解决

    这篇文章主要给大家介绍了关于react-router/react-router-dom v4 history不能访问问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧。
    2018-01-01
  • 实例讲解React 组件

    实例讲解React 组件

    这篇文章主要介绍了React 组件的相关资料,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • 详解React Hooks是如何工作的

    详解React Hooks是如何工作的

    React Hooks是在React 16.8版本新增的特性,在我看了React官网和一些博客对React Hook的讲解后还是觉得没有get到本质。本篇博客通过手动实现useState()来了解Hook的原理和本质。阅读此篇博客的前提是你要知道一些 React Hooks的基本用法和使用规则,不然会看得云里雾里。
    2021-05-05
  • 关于react useState更新异步问题

    关于react useState更新异步问题

    这篇文章主要介绍了关于react useState更新异步问题,具有很好的参考价值,希望对大家有所帮助。以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

    2022-08-08
  • 说说react中引入css的方式有哪些并区别在哪

    说说react中引入css的方式有哪些并区别在哪

    本文主要介绍了说说react中引入css的方式有哪些并区别在哪,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • React样式冲突解决问题的方法

    React样式冲突解决问题的方法

    本文主要介绍了React样式冲突解决问题的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03

最新评论