Я пытаюсь использовать interface
в своем schema
. Вот schema
:
export default new GraphQLObjectType({
name: "Org",
fields: () => ({
name: {
type: GraphQLString
},
paymentType: {
type: PaymentType,
resolveType: ({ isCreditCard }) => isCreditCard ? CreditCard : ACH
}
});
export const PaymentType = new GraphQLInterfaceType({
name: "PaymentType",
fields: () => ({
id: {
type: new GraphQLNonNull(GraphQLID)
},
name: {
type: new GraphQLNonNull(GraphQLString)
},
address: {
type: new GraphQLNonNull(Address)
}
})
});
export const CreditCard = new GraphQLObjectType({
name: "CreditCard",
interfaces: [PaymentType],
fields: () => ({
number: new GraphQLNonNull(GraphQLInt),
})
});
export const ACH = new GraphQLObjectType({
name: "ACH",
interfaces: [PaymentType],
fields: () => ({
routing: new GraphQLNonNull(GraphQLInt),
accountNumber: new GraphQLNonNull(GraphQLInt),
})
});
Когда я перехожу к своему GraphiQL
, я вижу paymentType
и поля, которые находятся в interface
, но не вижу информации CreditCard
или ACH
. У меня что-то неправильно настроено? Что мне не хватает?