Объекты Vue Axios API для массива объектов - PullRequest
1 голос
/ 12 марта 2019

В настоящее время у меня возникают проблемы с отображением данных о валютах на моем веб-сайте, где я хочу отобразить краткое название валюты и ее значение.

Я использую этот API, с долларом США в качестве базы: https://api.exchangeratesapi.io/latest?base=USD

Код, который я запускаю и получаю данные:

getCurrencies() {
  axios
    .get("https://api.exchangeratesapi.io/latest?base=USD")
    .then(response => {
      this.currencies = response.data.rates;
      console.log(this.currencies);
    });
}

Вывод, который я получаю, - это, конечно, просто значение валюты, и я ищу способ разбить эти объекты на массивы объектов, где я мог бы вызвать ex: currency.short & currency.price

Таким образом, я буду отображать как короткое имя, так и цену отдельно на веб-сайте, а не просто отображать значение валюты при использовании response.data.rates "

1 Ответ

2 голосов
/ 12 марта 2019

Вы можете использовать метод Object.keys для итераций по тарифам и функцию map для создания ваших объектов, например:

this.currencies = Object.keys(response.data.rates).map(k => ({
    short: k,
    price: response.data.rates[k]
}))
...