已解决:如何在graphQL片段中定义用于查询的可选字段

时间:2020-03-24 16:56:02

标签: graphql gatsby

该查询的数据库包含一个文件夹中的一组YAML文件。

使用GatsbyJS收集这些文件,并且可以通过graphQL请求获得这些文件。

并非所有源文件都定义了标签字段。

缺少该字段是否可以为该字段返回默认值或空值?


实际上我收到以下错误:

无法查询类型为“ EngagementsYamlTo”的字段“ label”。


这是我的查询:

{
  stable: allEngagementsYaml(filter: {stable: {eq: true}, to: {}}) {
    edges {
      ...engagementNode
    }
  }
  unstable: allEngagementsYaml(filter: {stable: {eq: false}}) {
    edges {
      ...engagementNode
    }
  }
}

fragment engagementNode on EngagementsYamlEdge {
  node {
    heading
    description
    iconClass
    stable
    to {
      href
      label
    }
  }
}

1 个答案:

答案 0 :(得分:2)

嗯...这不是查询的问题。

没有的源文件都具有标签字段,因此从未涉及过架构。至少有一个带有标签字段的文件将返回有效的响应。

已解决!