#reactjs #axios
Вопрос:
Я делаю запрос на вызов GET к API, чтобы получить некоторые данные в моем компоненте React и сохранить их в своей users
переменной, но данные не сохраняются, я получаю undefined
, когда я консоль.запишите это в журнал. Как я могу задать данные ответа из моего вызова GET и сохранить их в users
переменной? Вот моя попытка:
const [users, setPosts] = React.useState([]);
useEffect(() => {
fetch('https://jsonplaceholder.typicode.com/users')
.then((response) => response.json())
.then((data) => console.log(data));
setPosts(users.data);
}, []);
Ответ №1:
Вот как это должно быть, сделай это:
const [users, setPosts] = React.useState([]);
useEffect(() => {
fetch('https://jsonplaceholder.typicode.com/users')
.then((response) => response.json())
.then((data) => setPosts(data););
}, []);
Таким образом, вы устанавливаете свой users
как data
Также в качестве hook rule
вы должны определить свое состояние следующим образом const [users, setUsers] = useState()
Ответ №2:
В опубликованном коде вы не сохраняете данные для пользователей. Попробуй это:
useEffect(() => {
fetch('https://jsonplaceholder.typicode.com/users')
.then((response) => response.json())
.then(setPosts);
}, []);