首页 > 解决方案 > 如何跳过查询条件片段中的空对象?

问题描述

我有一个返回类型对象的查询ObjectA。响应使用条件片段。

union Objects = ObjectA | ObjectB | ObjectC

getObjects {
  ... on ObjectA {
    name
  }
}

解析器将返回所有对象

$util.toJSON($ctx.result.objects)

然而,我得到了回应:

[
  {
    "name": "apple"
  },
  {
    "name": "airplane"
  },
  {},
  {}
]

最后两个“空”对象不是 type ObjectA

我的问题是,有没有办法使用条件片段来排除不同类型的“空”对象?

标签: graphqlapollo-clientaws-appsync

解决方案


目前没有办法从响应中自动删除空对象。

您始终可以编写一些代码来删除响应对象中的空 obj。


推荐阅读