newdecline
@newdecline
Front-end-developer

Как показать прелодер на страницы до получения данных?

Привет.
Задача: реализовать в одном месте логику показа прелодера для страницы.
Сейчас это работает так:
в redux есть поле requestNames: [], массив содержащий строки с иминем запроса.
в методе request есть функция которая перед отправкой запроса добавят в массив строку именем запроса, а в конце , когда запрос завершится - сервер ответит, сработает функция которая этот имя запроса удалит из массива запросов.
В рендере страницы я получаю массив имен запросов текущих. И сравниваю, если имя текущего запроса совпадает с указанным именем запроса для текущей страницы то показываю прелодер.
Но щас проблема в том что изначально массив пустой и такое сравнение вернет false и будет такое поведение:
содержимое страницы мелькнет с пустыми данными затем покажется прелодер, а потом покажется содержимое страницы с полученными данными
  • Вопрос задан
  • 48 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Dasslier
FrontEnd Developer
Идея со строкой в массиве звучит как бред.
Запрос на сервер - асинхронная операция, вы вызываете ее из компонента и в нем же можете чейнить с помощью then
Сделайте стейт в компоненте isLoading: false
Перед вызовом запроса, поменяйте на true, а когда получите ответ от сервера в then/catch/finally - вырубите лоадер
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы