У меня есть этот фрагмент кода, и я пытаюсь извлечь данные из конечной точки API и просмотреть все данные в компоненте React. Я использую useSelector для чтения состояния и setState для определения состояния в указанном c компоненте. Когда я пытаюсь отобразить массив, он говорит, что карта не определена. В чем проблема с этим?
import React, {useState} from 'react';
import ContainerHeader from 'components/ContainerHeader/index';
import IntlMessages from "../../../util/IntlMessages";
import {useDispatch, useSelector} from "react-redux";
import TextField from "@material-ui/core/TextField";
import {getUsersFromBackEnd} from "../../../actions";
const UsersPage = ({match}) => {
const dispatch = useDispatch();
const allUsers = () => dispatch(getUsersFromBackEnd());
const [users, setUsers] = useState(allUsers);
const getUsers = useSelector(state => state.users);
console.log('users array: ', getUsers.users)
return (
<div className="app-wrapper">
<ContainerHeader match={match} title={<IntlMessages id="pages.users"/>}/>
<div className="d-flex justify-content-center">
<h1>Users Page</h1>
<ul>
</ul>
</div>
</div>
)
}
export default UsersPage;
Что мой журнал возвращает так:
{users: Array(2)}
users: Array(2)
0: {id: 1, name: "Admin", email: "admin@admin.com",
email_verified_at: null, approved: 1, …}
1: {id: 2, name: "User 2", email: "mail@mail.com",
email_verified_at: null, approved: 0, …}
length: 2
..........
Моя конечная точка возвращает это:
{
"result": true,
"users": [
{
"id": 1,
"name": "Admin",
"email": "admin@admin.com",
"email_verified_at": null,
"approved": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null,
"roles": [
{
"id": 1,
"title": "Admin",
"created_at": null,
"updated_at": null,
"deleted_at": null,
"pivot": {
"user_id": 1,
"role_id": 1
}
}
]
},
{
"id": 2,
"name": "User 2",
"email": "mail@mail.com",
"email_verified_at": null,
"approved": 0,
"created_at": "2020-04-16 07:35:48",
"updated_at": "2020-04-16 07:35:48",
"deleted_at": null,
"roles": [
{
"id": 2,
"title": "User",
"created_at": null,
"updated_at": null,
"deleted_at": null,
"pivot": {
"user_id": 2,
"role_id": 2
}
}
]
}
]
}