Madeas
@Madeas
UI / UX Designer, Frontend Developer

Как объединить несколько axios запросов?

Добрый день.
В приложении есть такая структура

const 
    nav = 'json/nav.json',
    ...
   ...

new Vue({
    navlist: [],
    timeline: [],
    ...
    ...


created() {
        axios.get(nav).then((response) => {
            this.navlist = response.data
        }),
        axios.get(counterts).then((response) => {
            this.count = response.data
        }),
        axios.get(tline).then((response) => {
            this.timeline = response.data
        }),
      ...
      ...
      ...
      ...
    },


Подскажите, можно ли как-нибудь объединить содержимое функции created? Получается громоздко...
  • Вопрос задан
  • 302 просмотра
Решения вопроса 1
@abberati
frontend-разработчик
const fetchData = uri => axios.get(uri).then(({data}) => data);

function created() {
  const nav = '';
  const counterts = '';
  const tline = '';

  Promise.all([
    fetchData(nav),
    fetchData(counterts),
    fetchData(tline),
  ]).then(([ navlist, count, timeline ]) => {
    this.navlist = navlist;
    this.count = count;
    this.timeline = timeline;
  }).catch(handleError)
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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