iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >React Context如何使用
  • 131
分享到

React Context如何使用

2023-07-05 09:07:08 131人浏览 八月长安
摘要

今天小编给大家分享一下React Context如何使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.Cont

今天小编给大家分享一下React Context如何使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

1.Context是干嘛的

一种React组件间通信方式, 常用于【祖组件】与【后代组件】间通信

2.可以倒是可以实现的做法-props逐级传递

import React, { Component } from "react";import "./index.CSS";export default class A extends Component {  state = { username: "tom", age: 18 };  render() {    const { username, age } = this.state;    return (      <div className="parent">        <h4>我是A组件</h4>        <h5>我的用户名是:{username}</h5>        <B username={username} age={age}></B>      </div>    );  }}class B extends Component {  render() {    console.log(this.props);    const { username, age } = this.props;    return (      <div className="child">        <h4>我是B组件</h4>        <C username={username} age={age} />      </div>    );  }}function C(props) {const { username, age } = props;  return (    <div className="grand">      <h4>我是C组件</h4>      <h5>        我从A组件接收到的用户名:{username},年龄是{age}      </h5>    </div>  );}

这里C组件用了下函数式组件的写法

React Context如何使用

但是这种写法有很多的不太好的地方,如果层级再深一点呢,传的值再多一点呢。肯定会有很多的重复代码出现,而且我只想要祖组件和孙组件通信,这样写的话其实是每个组件都在通信了的。

3.Context

Context的就可以挺好的适用于这种场景

创建Context容器对象:
const XxxContext = React.createContext()
2) 渲染子组时,外面包裹xxxContext.Provider, 通过value属性给后代组件传递数据:
<xxxContext.Provider value={数据}>
子组件
</xxxContext.Provider>
3) 后代组件读取数据:
//第一种方式:仅适用于类组件
static contextType = xxxContext // 声明接收context
this.context // 读取context中的value数据
//第二种方式: 函数组件与类组件都可以
<xxxContext.Consumer>
{
value => ( // value就是context中的value数据
要显示的内容
)
}
</xxxContext.Consumer>

上代码

import React, { Component } from "react";import "./index.css";//创建Context对象const MyContext = React.createContext();const { Provider, Consumer } = MyContext;export default class A extends Component {  state = { username: "tom", age: 18 };  render() {    const { username, age } = this.state;    return (      <div className="parent">        <h4>我是A组件</h4>        <h5>我的用户名是:{username}</h5>        //如果传的只有一个值例如username,应该式value={username},后面就是直接获取了,不需要再属性名取值了        <Provider value={{ username, age }}>          <B />        </Provider>      </div>    );  }}class B extends Component {  render() {    return (      <div className="child">        <h4>我是B组件</h4>        <C/>      </div>    );  }} class C extends Component {//声明接收contextstatic contextType = MyContextrender() {const {username,age} = this.contextreturn (<div className="grand"><h4>我是C组件</h4><h5>我从A组件接收到的用户名:{username},年龄是{age}</h5></div>)}} // function C() {//   return (//     <div className="grand">//       <h4>我是C组件</h4>//       <h5>//         我从A组件接收到的用户名://         {}//       </h5>//     </div>//   );// }

以上就是“React Context如何使用”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

--结束END--

本文标题: React Context如何使用

本文链接: https://www.lsjlt.com/news/350822.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • React Context如何使用
    今天小编给大家分享一下React Context如何使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.Cont...
    99+
    2023-07-05
  • React Context与setState如何使用
    这篇文章主要介绍“React Context与setState如何使用”,在日常操作中,相信很多人在React Context与setState如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对...
    99+
    2023-07-04
  • react中context怎么使用
    今天小编给大家分享一下react中context怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来...
    99+
    2024-04-02
  • React Context详解使用方法
    目录一、概述二、APIReact.createContextContext.ProviderClass.contextTypeContext.ConsumerContext.disp...
    99+
    2022-12-03
    React Context React Context用法
  • React Context的用法分析
    这篇文章将为大家详细讲解有关React Context的用法分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前言Context被翻译为上下文,在编程领域,这是一个经常会接触到的概念,React中也有。在...
    99+
    2023-06-14
  • react中的context怎么用
    这篇“react中的context怎么用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“re...
    99+
    2024-04-02
  • GoLang context包如何使用
    本文小编为大家详细介绍“GoLang context包如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“GoLang context包如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-07-05
  • react中关于Context/Provider/Consumer传参的使用
    目录Context/Provider/Consumer传参使用Context使用context向后代组件传参Context/Provider/Consumer传参使用 react c...
    99+
    2024-04-02
  • react如何使用react-bootstrap
    这篇文章主要介绍了react如何使用react-bootstrap,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。react入门之搭配环境(一...
    99+
    2024-04-02
  • Context怎么在React中应用
    本篇文章给大家分享的是有关Context怎么在React中应用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Context定义和目的Context 提供了一种在组件之间共享数据...
    99+
    2023-06-15
  • react如何在React html中使用
    本篇文章为大家展示了react如何在React html中使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。基本使用<!DOCTYPE html><html l...
    99+
    2023-06-14
  • React中的Context应用场景分析
    Context定义和目的 Context 提供了一种在组件之间共享数据的方式,而不必显式地通过组件树的逐层传递 props。 应用场景 哪些数据会需要共享? Context 设计目...
    99+
    2024-04-02
  • React Context用法小结(附完整代码)
    目录前言知识点汇总场景1:使用Provider和Consumer生产和消费数据 文件目录及说明代码文件 ProductContext.js:效果场景2:使用ContextType接收...
    99+
    2023-05-17
    React Context用法 React Context
  • 如何使用react-redux
    本文小编为大家详细介绍“如何使用react-redux”,内容详细,步骤清晰,细节处理妥当,希望这篇“如何使用react-redux”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。...
    99+
    2024-04-02
  • React Hooks如何使用
    这篇文章主要介绍了React Hooks如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇React Hooks如何使用文章都会有所收获,下面我们一起来看看吧。hooks介绍在react...
    99+
    2023-07-05
  • React使用Context与router实现权限路由详细介绍
    目录前言思路实现向根组件注入权限列表抽离ContextHOC实现权限路由组件实现实现使用方法实现类似react-router-config的集中式权限路由配置实现使用方法前言 之前使...
    99+
    2023-01-28
    React权限路由 React Context权限路由 React router权限路由
  • React组件如何使用
    本篇内容主要讲解“React组件如何使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“React组件如何使用”吧!组件的定义:理解:用来实现局部功能效果的代码和资源的集合(html/css/js...
    99+
    2023-07-05
  • React中如何使用scss
    这篇文章主要介绍“React中如何使用scss”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“React中如何使用scss”文章能帮助大家解决问题。React中使用scss首先导入node-sass ...
    99+
    2023-07-05
  • React中如何使用Redux
    这篇文章主要讲解了“React中如何使用Redux”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“React中如何使用Redux”吧!Redux 是一种状态容器 JS 库,提供可预测的状态管理...
    99+
    2023-07-02
  • 如何使用react实现todolist
    本教程操作环境:Windows10系统、react18.0.0版、Dell G3电脑。如何使用react实现todolist?React入门实战实例——ToDoList实现摘要: 最近学习了一小段时间的React,对一些React开发组件的...
    99+
    2023-05-14
    todolist React
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作