在GraphQL查询中剔除空数组

时间:2017-11-23 11:13:44

标签: graphql

以下是要求各种体育赛事的GraphQL查询的要点。

        $('#demo').html(ans);

我们可能会得到类似的东西:

query Sports {
  sports {
    name
    events {
      name
    }
  }
}

在这种情况下,任何运动都可能有一系列空的事件。我可以在查询中放置一些要求任何数组至少应包含1个元素的内容吗?或者,如果我想防止这种情况发生,我是否需要在客户端上实施过滤?

2 个答案:

答案 0 :(得分:1)

除了请求特定字段之外,GraphQL还没有任何过滤或减少查询结果的烘焙方法。在为端点创建模式时,必须实现任何过滤,排序等。

您必须查阅您正在使用的终端(or run an introspection query)的文档,以确定是否有任何参数可以传递到sports字段以防止没有事件的运动从服务器返回。

答案 1 :(得分:0)

在graphCMS中,我们可以使用关键字“where”。 不知道标准API有没有这个功能。

query Sports {
   sports(where: {events_some: {}}) {
      name
      events {
         name
      }
   }
}