Контекст React очень полезен, когда вы создаете интерфейсное приложение с помощью react. Сначала я рассказываю, почему нам нужно реагировать на контекст.

Предположим, у нас есть указанное выше приложение для реагирования. Массив, содержащий сведения о пользователе, находится в файле DesplayUser.js и отображает все сведения о пользователе. Добавьте новые данные пользователя и отредактируйте дескриптор данных текущего пользователя с помощью EditUser.js и AddUser.js. Файлы EditUser.js и AddUser.js должны иметь доступ к данным пользователя. Как мы это делаем? мы можем импортировать EditUser.js и AddUser.js в despalyUser.js и передавать данные пользователя с помощью props. Но я не хочу отображать компонент EditUser и компонент AddUser в компоненте displayUser, это не имеет никакого смысла. Еще мы можем взять массив сведений о пользователе из компонента DespalyUser и перейти к родительскому компоненту, которым является app.js. теперь все три компонента могут получить доступ к сведениям о пользователях с помощью реквизита, но данные пользователя не относятся к компоненту приложения. Итак, мы можем использовать контекст реакции для этой ситуации. Здесь происходит следующее: мы создаем компонент контекста и сохраняем в нем сведения о пользователе и передаем все данные о пользователе в любой компонент, который нам нужен, через контекст.

import React ,{createContext} from 'react'
export const userContext = createContext();
export const UserProvider  = (props) => {
    const User = [
  {
    name:'perera',
    age: 20,
    email:'[email protected]'
  },
  {
    name:'randy',
    age:25,
    email:'[email protected]'
  }
];
    return (
        <userContext.Provider  value={User} >
            {props.children}
        </userContext.Provider>
    )
}

Для этого нам нужно создать файл с именем contextuserdetails.js. нам нужно импортировать createContext, потому что нам нужно создать контекст. Мы создаем контекст с именем userContext и экспортируем его. Затем мы вырезаем сведения о пользователе из Desplayuser.js и переходим в contextuserdetails.js. мы создаем компонент под названием UserPrivider в этом файле и здесь данные о прошлых пользователях. Внутри возврата мы визуализируем этот userContext и передаем userDetails. Prpos.children отображает все дочерние компоненты, перемещенные между пользовательским контекстом. Здесь не использовался экспорт по умолчанию, потому что userComtext также экспортирует.

import AddUser from "./AddUser.js"
import EditUser from "./EditUser.js"
import DisplayUser from "./DisplayUser.js"
import {UserProvider } from "./UserDetailsContext.js"
function App() {
  return (
    <UserProvider>
      <div>
        <AddUser/>
        <EditUser/>
        <DisplayUser/>     
      </div>  
    </UserProvider>
  );
}
export default App;

Для доступа к сведениям о пользователе нам понадобится компонент. Затем импортируйте UserPrivider в app.js и оберните компонент, который должен получить доступ к данным пользователя. Тогда как получить доступ к этим деталям. Чтобы получить доступ к этим сведениям о пользователе, нам нужно импортировать userContext и useContext. Внутри компонента получите информацию о пользователе с помощью const. Теперь мы можем использовать это постоянное отображение или изменять данные пользователя.

import React,{useContext} from 'react';
import {userContext} from "./Products.js"
function DisplayUser(){
const value  = useContext(userContext);
    return(
        <div>
            {value.map(user =>(
                <h4>{user.name}</h4>
                <h4>{user.age}</h4>
                <h4>{user.email}</h4>
            ))}            
        </div>
    )
}
export default DisplayUser;

Итак, я думаю, вы получили представление о том, как использовать контекст в проектах React. Контекст очень полезен, когда мы создаем очень большой проект.