如何跳过查询条件片段中的空对象?

Posted

技术标签:

【中文标题】如何跳过查询条件片段中的空对象?【英文标题】:How to skip empty objects in query conditional fragment? 【发布时间】:2020-01-05 07:31:57 【问题描述】:

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

union Objects = ObjectA | ObjectB | ObjectC

getObjects 
  ... on ObjectA 
    name
  

解析器将返回所有对象

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

但是,我得到了回复:

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

最后两个“空”对象的类型不是ObjectA

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

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

对。这也是我在检查graphql的conditional fragment with unions的方式时发现的。 两年后……太伤心了。 ?

以上是关于如何跳过查询条件片段中的空对象?的主要内容,如果未能解决你的问题,请参考以下文章

使用 getChildFragmentManager().beginTransaction() 时的空对象引用

检查 django 中的空查询集

ORACLE查询条件为空,则跳过该条件。

如何找出 json 响应是 android 中的空 JSON 对象?

如何在不跳过值的情况下读取 PHPExcel 中的空单元格?

.getImage() 上的空对象引用 android [重复]