Задать вопрос
@mag1st3r

Как последовательно выполнять запросы?

Делаю запрос на сервер через map с разными urls, потом полученные данные я устанавливаю в State и использую для вывода. Хочу чтобы запросы были последовательные, но иногда они срабатывают неправильно и получаются баги. Как правильно прописать код для нормального получения данных?

const urlList = ["countries", "states", "cities", "users"];
componentDidMount() {
         urlList.map( (url, index) => {
            return servicesAPI.getResourse(url).then( (body) => {
                index !== 3 ?  this.setState({
                                 dataAPI : [...this.state.dataAPI, body] }) :
                                this.setState({
                                    dataAPI : [...this.state.dataAPI, body],
                                    loaded: true
                                })

            })
        })
export default  class ServicesAPI {
    _apiBase = `http://localhost:3001/`;


    async getResourse(url) {
        const res = await fetch(`${this._apiBase}${url}`);

        if (!res.ok) {
            throw new Error(`Could not fetch ${url}` +
                `, received ${res.status}`)
        }
        return await res.json();
    }
  • Вопрос задан
  • 925 просмотров
Подписаться 1 Средний Комментировать
Ответ пользователя Владимир К ответам на вопрос (2)
Ответ написан
Комментировать