GraphQL Error Field "tags" must not have a selection since type "[String]" has no subfields.
我正在研究GatsbyJS存储库。根据{{3}},GatsbyJS会自动从我的markdown文件中推断出模式,这些文件会使用tags: ["sayings", "wisdom"]
这样的行隐式定义类型。当然,GatsbyJS应该推断类型为数组,列表或类似的东西。为什么GatsbyJS会推断类型为String?
答案 0 :(得分:2)
开发服务器正在运行时,可以在SELECT a.name, a.timein, a.signature, b.timeout, b.signature
FROM check_in a
FULL OUTER JOIN check_out b
ON a.datein = b.dateout AND a.name = b.name
WHERE a.datein = '2019-01-28' OR b.dateout = '2019-01-28';
上访问其的GraphiQL接口。 Graph i QL是一个IDE,不仅可以让您针对GraphQL服务器编写和运行查询,而且还提供了一种查看架构的方式,包括每个可用字段的类型。有关更多信息,请参见the docs。它包括语法高亮显示,因此在编写查询时强烈建议使用它。
您看到的错误表明字段http://localhost:8000/___graphql
的类型为tags
。此处的括号表示类型[String]
的{{1}}(或数组)。 List
,String
,String
,Int
和Float
都是内置标量类型。具有标量类型(或枚举)的字段被视为“引导节点”,因此,它们本身不能具有字段选择。换句话说,
Boolean
是无效的语法。必须是
ID
这就是为什么您看到上述错误的原因。如其声明,类型tags {}
没有子字段。如果假设tags
字段返回的类型是对象类型或对象列表,那么您必须指定要返回的字段。
您可能会发现,详细了解GraphQL概念很有帮助。 This tutorial将是一个很好的起点,并且总是有specification itself。