【问题标题】:using Union types in GraphQL typedDefs在 GraphQL typedDefs 中使用联合类型
【发布时间】:2018-10-22 08:13:34
【问题描述】:

我正在输入我的typedDefs,对于一个属性,它可以返回StringBoolean

const typeDefs = `
    type Analysis {
    id: String
    analysisName: String
    creator: String
    description: String
    datesValid: String 
}
`

我希望 datesValid 成为 StringBoolean。我试过了:

const typeDefs = `
    ...
    datesValid: boolString 
}

union boolString = String | Boolean
`

但这导致尝试通过 GraphiQL 查询时出现500 内部服务器错误。

我的最终目标是将其输入为String | Boolean

【问题讨论】:

    标签: graphql apollo


    【解决方案1】:

    根据 GraphQL 规范,联合类型只能是 created from object types。这意味着你想做的事情是不可能的。

    我相信有不同的方法可以解决您的问题。也许可以为空的日期类型正在解决您的问题?或者一个可以有多个值的枚举(例如VALIDINVALIDPENDING)?在极端情况下,您拥有的标量类型可以达到目的。

    通常,规范中的这些限制也是为了帮助人们构建一致且易于使用的 API。

    【讨论】:

      猜你喜欢
      • 2020-02-09
      • 2018-09-28
      • 2019-07-01
      • 2021-03-17
      • 2017-12-30
      • 2018-03-28
      • 2021-04-01
      • 2018-10-03
      相关资源
      最近更新 更多