как использовать метод get в react js

#reactjs #react-native

Вопрос:

это мой код реакции, здесь я получаю данные из бэкенда с помощью mongo. мои данные отображаются, console но не отображаются на веб-странице, на которой они отображаются » пользователи.карта не является функцией. но если я попробую API jsonplaeholder, то он будет работать правильно.

 import React, { useEffect, useState } from "react";



const Get = () => {
    const [users,setUsers] = useState([]);
  const getAllUser = async () => {
    const response = await fetch("/get");
    setUsers(await response.json());
    console.log(users);
};

    useEffect(() => {
      getAllUser();
    },[]);


    return (
      <>
      { users.map((ce) => 
           <div key={ce.id}>
               <h2>{ce.name}</h2>
               <p>{ce.email}</p>

           </div>)}
     </>
    )
  
}
     
       
export default Get;
 

это данные базы данных

 {"status":"success","results":2,"data":{"users":[{"_id":"6134fcc6eddae0ec522fecd7","name":"ram ","email":"ram@gmail.com","number":9455294552,"__v":0},{"_id":"61364d918a8ab07512094443","name":"rawal","email":"rawal@gmail.com","number":9309304400,"__v":0}]}}
 

Ответ №1:

Вам нужно правильно настроить свое состояние res.data.users следующим образом.

 import React, { useEffect, useState } from "react";

const Get = () => {
  const [users, setUsers] = useState([]);

  const getAllUser = async () => {
    const response = await fetch("/get");
    response.json().then((res) => setUsers(res.data.users));
    console.log(users);
  };

  useEffect(() => {
    getAllUser();
  }, []);

  return (
    <>
      {users.map((ce) => (
        <div key={ce.id}>
          <h2>{ce.name}</h2>
          <p>{ce.email}</p>
        </div>
      ))}
    </>
  );
};

export default Get;

 

Комментарии:

1. большое вам спасибо, сэр, за вашу помощь, это работа.