0

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

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”解析器。如果我做错了什么,请纠正我。

4

1 回答 1

0

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

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

const Resolvers = {
    Query: {
        ABCDList: () => []
    },
    ABCD: {
        reference: () => [] 
    },
    NestedLevel1: {
        reference: () => [] 
    }
}
于 2018-12-17T12:49:00.780 回答