GrapQL typedef突变需要接受一个数组

时间:2018-09-13 05:06:40

标签: javascript types graphql mutation

在GraphQL中声明typeDefs时,如何在突变中传递自定义类型的数组?

type Itinerary {
  name: String!
  itinerary: [Location]!
}

input Location {
  name: String!
  country: String
  region: String
  city: String
  duration: Int!
}

type Mutation {
  addItinerary(
    name: String!,
    itinerary: [Location]!,
  ): Itinerary
}

我在graphiql中遇到错误“ Itinerary.itinerary的类型必须为Output Type,但得到:[Location]!”

这似乎是一件微不足道的任务,但我找不到适合这种情况的任何东西

1 个答案:

答案 0 :(得分:0)

您将返回Itinerary类型,该类型本身包含嵌套的Location,但是您已经声明Location输入类型,由于发生突变而无法返回。您需要定义单独的输入类型,并且不能返回它们。