fields
може да приеме функция вместо обект. По този начин кодът във функцията няма да бъде оценен веднага:
fields: () => ({
id: { type: GraphQLID },
name: { type: GraphQLString },
category: {
type: CategoryType,
resolve: (parent) => Category.findOne({_id: parent.category}),
}
})