Доброго времени!
Заранее извиняюсь за столь большую писанину.
Есть контейнер списока фильмов, который отрисовывает список только после того как в store redux изменится свойство
isFetching >на ture и при false отображает мой Spinner.
Дилемма в том что во первых отображение спиннера даже не заметно т.к оно длится доли секунд (есть ли смысл вешать таймер?).
Далее я попробовал такой подход для отображения спиннера когда я переключаю страницу/изменяю фильтр
Вызываю экшн(либо в action запроса, либо только при нажатии на кнопку переключения страниц) и в reducer меняю статус
isFetching на false но тогда происходит небольшой скачек т.к список отрисовывается каждый раз с нуля.
if ( this.props.AllMovies.isFetching) {
return (
<MoviesList/>
)
} else{
<Spinner/>
}
Как тут можно сделать? Так же возникает вопрос как быть если будет ошибка от сервера, добавлять ли новый else if для проверки статуса ответа и при не успешном ответе отрисовывать кнопку повторного запроса?
Живой пример проекта
здесь(на данный момент спиннер не стоит при каких либо изменениях списка)