带apollo查询的asyncData返回一个对象,但不返回数组

时间:2020-07-13 09:05:43

标签: javascript arrays async-await nuxt.js apollo

我正在使用apollo通过asyncData在Nuxt.js项目中获取数据

import homeQuery from '~/apollo/queries/home'

export default {
  async asyncData({app}) {
    const homeresult = await app.apolloProvider.defaultClient.query({
    query: homeQuery
  })
  return { home: homeresult.data.home }
},
data () {
  return {
    home: {}
  }
}

当查询结果是一个对象时,这很好用,例如上面是:

 {
   "data": {
     "home": {
       title": "Home"
     }
   }
}

但是,如果查询结果是数组:

{
  "data": {
    "home": [
      {
        "id": "1"
      },
      {
        "id": "2"
      },
      {
        "id": "3"
      }
    ]
  }
}

一无所获。 (我还测试了data () { return { home: [] } }

我必须区别对待数组吗,应该如何正确编写asyncData?

1 个答案:

答案 0 :(得分:0)

我完全不知道发生了什么变化……但是当我再次尝试该代码时,结果数组不再有问题。

相关问题