Я искал по этому поводу, но я не нашел ничего конкретного c для того, что мне нужно. Если есть, пожалуйста, поделитесь здесь.
Я пытаюсь создать универсальный c сервис для вызова в различных компонентах. Поскольку это функция, которая запрашивает данные из внешнего источника, мне нужно рассматривать ее как асинхронную функцию. Проблема в том, что редактор возвращает сообщение «await» не влияет на тип этого выражения ». И приложение действительно дает сбой, поскольку данных пока нет.
People. js вызывает запросы на обслуживание. js
import React, { useEffect, useState } from "react";
import requests from "../services/requests";
export default () => {
// State
const [ people, setPeople ] = useState({ count: null, next: null, previous: null, results: [] });
// Tarefas iniciais
useEffect(() => {
carregarpeople(1);
}, []);
// Carregando os dados da API
const carregarpeople = async (pageIndex) => {
const peopleResponse = await requests("people", pageIndex);
// This line below needs to be executed but it crashes the app since I need to populate it with the data from the function requests
// setPeople(peopleResponse);
}
return (
<div>
{
people.results.length > 0 ? (
<ul>
{
people.results.map(person => <li key = { person.name }>{ person.name }</li>)
}
</ul>
) : <div>Loading...</div>
}
</div>
)
}
И это запросы. js, где он возвращает json от API
export default (type, id) => {
console.table([ type, id ]);
fetch(`https://swapi.co/api/${type}/?page=${id}`)
.then(response => response.json())
.then(json => {
console.log(json);
return json;
})}
![enter image description here](https://i.stack.imgur.com/TMZTj.png)