将graphQL片段添加到架构,并且可用于所有查询

时间:2017-10-12 05:01:57

标签: javascript graphql graphql-js

以下在graphiQL中正确执行

fragment BookGridFields on Book {
  _id
  title
}

{
  allBooks {
    ...BookGridFields
  }
}

我的问题是,可以在我的架构中指定片段,就在我的Book类型定义的下方,就像这样

type Book {
  _id: String
  title: String
  pages: Int
  weight: Float
  authors: [Author]
}

fragment BookGridFields on Book {
  _id
  title
}

这样我就可以像这样运行

{
  allBooks {
    ...BookGridFields
  }
}

无需将片段定义为我的查询的一部分。

目前上述错误有

  

未知片段\" BookGridFields \"

1 个答案:

答案 0 :(得分:6)

根据graphql文档,我看到片段是查询api的一部分,而不是用于设置模式的有效语法。这使我得出结论,目前无法在模式中指定片段。

https://graphql.org/learn/queries/#fragments