嵌套查询 GraphQL:语法错误 - iOS
Posted
技术标签:
【中文标题】嵌套查询 GraphQL:语法错误 - iOS【英文标题】:Nested query GraphQL : Syntax error - iOS 【发布时间】:2019-04-18 12:25:13 【问题描述】:我正在使用 Apollo GraphQL 并且必须调用嵌套查询。但是在调用 .graphql
文件中的查询时,它会显示
语法错误:预期名称,找到
让我知道如何调用 GraphQL 的嵌套查询。
我必须使用指定的参数调用 getAllproduct.... 查询。这里的 FilterInput 参数为 >location 使用另一种查询模式,所以我不知道如何调用此嵌套查询。请帮助我找出解决方案。谢谢...
【问题讨论】:
【参考方案1】:如果参数是输入对象类型(而不是标量),您可以使用大括号包含输入对象类型的字段。
query MyProductsQuery
allProducts(
pageNumber: "someString"
filter:
title: "someOtherString"
yearFrom: 1900
location:
city: "yetAnotherString"
state: "FL"
)
id
# other product fields
当然,在.graphql
文件中硬编码这些值并不是很有帮助。您可能希望能够以编程方式交换这些值。所以这就是同一个查询在变量中的样子:
query MyProductsQuery($pageNumber: String, $filter: FilterInput)
allProducts(pageNumber: $pageNumber, filter: $filter)
id
# other product fields
您的变量与您的查询分开传入,并且与您的查询不同,它不是 GraphQL 文档。它们只是 JSON:
"pageNumber": "someString",
"filter":
"title": "someOtherString",
"yearFrom": 1900,
"location":
"city": "yetAnotherString",
"state": "FL"
【讨论】:
以上是关于嵌套查询 GraphQL:语法错误 - iOS的主要内容,如果未能解决你的问题,请参考以下文章