Когда я использую тип объединения в своей схеме graphQL, я обычно использую его следующим образом:
const documentTypeDefs = gql`
union TestType = TypeExample1 | TypeExample2
type Document {
exampleKey: TestType
}
`
Затем я разрешаю его следующим образом:
TestType: {
__resolveType(obj) {
if(obj.property1) {
return 'TypeExample1';
}
if(obj.property2) {
return 'TypeExample2';
}
return null;
},
}
Но иногда яполучение пустого объекта в моей разрешающей функции (т.е. obj
- это {}
).Я думал, что возвращение null
или undefined
сделает работу, но, к сожалению, я получаю ошибку:
"Abstract type ItemsType must resolve to an Object type at runtime for field Document.exampleKey with value {}, received \"{}\". Either the ItemsType type should provide a \"resolveType\" function or each possible type should provide an \"isTypeOf\" function."
Как я могу тогда разрешить пустой объект?Спасибо!