Задать вопрос
@kur4chyt
Качественный говнокод от производителя

При ожидании ответа от сервера AXIOS заменять элемент анимацией загрузки во Vue.js?

У меня есть элемент ( кнопка ), при клике на который через аттрибут @click обращается к методу "sendRequest" , который в свою очередь отсылает через библиотеку axios запрос на сервер, так вот, как при любом обращении через библиотеку axios к серверу, пока ответ от сервера еще в обработке, вставлять вместо элемента (в данном случае кнопки) - анимацию загрузки (гиф картинку с loader'ом)?
  • Вопрос задан
  • 652 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
Kozack
@Kozack Куратор тега Vue.js
Thinking about a11y
Я знаю два способа:
  1. Простой:
    1. Создаёте переменную loading.
    2. Перед отправкой запроса выставляете значение loading = true.
    3. После отправки в секции finally выставляете значение loading = false.
    4. В самом шаблоне смотрите на этот переключатели и отображаете загрузку


  2. Сложный, но более надёжный
    1. Используете xstate для управления состояниями вашего компонента.
    2. В самом шаблоне смотрите на текущее состояние и отображаете загрузку



UPD
Очень советую этот доклад по теме
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы