将响应从Axios呼叫推送到Firebase - Vue.js

时间:2017-12-07 18:17:18

标签: javascript firebase vue.js axios

我正在对api进行axios调用,并得到了预期的响应。但是,我现在需要接受这个响应并将其推送到我的firebase firestore。我知道如何进入firestore,但我似乎无法正确地从axios调用中获取数据。这是我的代码:

axios.get('https://somewhereontheweb.com/api/getgames', {
          headers: {
            'Content-Type': 'application/json',
            'Accept': 'application/json',
            'Authorization': 'Bearer ' + token,
          }
        })
          .then(response => {
            this.games = response.data;

            // push data into firestore?
          })
          .catch(function (error) {
            console.log(error);
          });

我从api返回一个json数组,并且可以在我的vue页面上显示它(此时它是一个对象)(所以{{games}})。但是,我需要获取该数据,迭代它并在每次迭代中将游戏数据推送到firestore。你能解释一下怎么做吗?我可以编写代码来推入firestore,但我无法编写代码来迭代来自axios调用的响应以推入firebase。我一直在尝试,但我没有到达任何地方。任何提示都很棒。

谢谢!

1 个答案:

答案 0 :(得分:2)

因为它是一个JSON字符串,你可以使用这样的东西来迭代它以将它操作到你想要的数据结构中:

for(var i in response.data){
  response.data[i].dosomething()
}

此外,将迭代传递给辅助函数可能是一个好主意,该函数的承诺最终将其发送到Firestore。