【问题标题】:asyncData with apollo query returns an object but not an array带有 apollo 查询的 asyncData 返回一个对象,而不是一个数组
【发布时间】:2020-11-02 10:59:35
【问题描述】:

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

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?

【问题讨论】:

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


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2019-11-09
      • 2020-04-08
      • 1970-01-01
      • 1970-01-01
      • 2016-05-03
      • 1970-01-01
      • 2020-10-07
      • 2020-05-06
      • 1970-01-01
      相关资源
      最近更新 更多