“graphql-tools”中的嵌套解析器不起作用

Posted

技术标签:

【中文标题】“graphql-tools”中的嵌套解析器不起作用【英文标题】:Nested resolver in "graphql-tools" not working 【发布时间】:2019-05-17 18:53:40 【问题描述】:

我无法使用 graphql-tools 调用嵌套解析器。我已经在github上提交了bug,但还没有得到任何回复。

https://github.com/apollographql/graphql-tools/issues/1026.

查询时未调用我的架构的嵌套字段。

架构

type XYZ 
   title: String


type NestedLevel1 
   reference: XYZ


type ABCD 
   title: String
   reference: XYZ
   nestedLevel1: NestedLevel1 


type Query 
     ABCDList(limit: Int, skip: Int): [ABCD]

解析器

const Resolvers = 
    Query: 
        ABCDList: () => []
    ,
    ABCD: 
        reference: () => [] // this function is being called
        nestedLevel1: 
            reference: () => [] // this function is not being called
        
    

正在调用***“reference”的解析器函数,但不是“nestedLevel1.reference”解析器。如果我做错了什么,请纠正我。

【问题讨论】:

【参考方案1】:

我已经找到了解决上述问题的方法。在嵌套解析器中应该使用字段类型而不是提供返回类型的字段 id(key)。

以下是对我有用的解决方案。

const Resolvers = 
    Query: 
        ABCDList: () => []
    ,
    ABCD: 
        reference: () => [] 
    ,
    NestedLevel1: 
        reference: () => [] 
    

【讨论】:

以上是关于“graphql-tools”中的嵌套解析器不起作用的主要内容,如果未能解决你的问题,请参考以下文章

我的Android进阶之旅------>Android中ListView中嵌套(ListView)控件时item的点击事件不起作的问题解决方法

graphql-tools 突变解析器的参数不是 v > 0.8.0 中的对象?

突变中的嵌套对象

如何使用 graphql-tools 使用或解析枚举类型?

GraphQL 嵌套查询查找

模式中的引导日期选择器不起作用