Я передаю массив с помощью Context API, который содержит сведения о сотрудниках. Когда я использую массив в компоненте Employee. js и пытаюсь отобразить каждого из сотрудников с помощью метода map, но эти значения массива отображаются только в консоли и не отображаются с помощью JSX.
данные. js
export const employees=[
{
id:1001,
name: "Nafaz Benzema",
salary: 67000,
},
{
id:1002,
name: "Doto Kama",
salary: 23000,
},
{
id:1003,
name: "Chopa Malli",
salary: 14000,
}
];
контекст. js
import React, { Component } from 'react';
import {employees,detailProduct,storeProducts} from './data'
const EmployeeContext=React.createContext();
class EmployeeProvider extends Component {
constructor(props)
{
super(props);
this.state={
employees:employees
}
}
render() {
return (
<EmployeeContext.Provider value={{...this.state}}>
{this.props.children}
</EmployeeContext.Provider>
);
}
}
const EmployeeConsumer=EmployeeContext.Consumer;
export {EmployeeContext,EmployeeProvider,EmployeeConsumer};
Сотрудник. js
import React, {Component } from 'react';
import {EmployeeConsumer} from '../context'
import EmpDisplay from './EmpDisplay';
class Employee extends Component {
render() {
return (
<div>
<EmployeeConsumer>
{
value=>{
value.employees.map(emp=>(
<div className="employees">
{console.log(emp)}// working
<h2>Id : {emp.id}</h2> //not rendering
<h2>Name : {emp.name}</h2> //not rendering
<h2>Salary : {emp.salary}</h2> //not rendering
</div>
));
}
}
</EmployeeConsumer>
</div>
);
}
}
export default Employee;