У меня есть проблема с GraphQL (в частности, реализуя GraphQLList)GraphQL: Как реализовать GraphQLList из GraphQLObjectTypes
У меня есть запрос getItemByName
, который правильно возвращает Item
, с типом itemType
. Но я не смог реализовать getItemList
(или соответствующий пример кстати). Я знаю, что он должен иметь тип, который реализует GraphQLList.
Но я делаю это правильно? Каков формат данных, который должен получить resolve
? (Или что getItems()
должен вернуться). Массив объектов? Должны ли эти объекты выполнять определение «itemType»? Должен ли интерфейс реализовываться?
export const itemType = new GraphQLObjectType({
name: 'Item',
fields: {
name: {
type: GraphQLString,
description: 'Item Name',
},
},
});
const itemListType = new GraphQLObjectType({
name: 'ItemsList',
fields: {
items: {
type: new GraphQLList(itemType),
description: 'List of items',
},
},
});
{...}
const schema = new GraphQLSchema({
query: new GraphQLObjectType({
name: 'Query',
fields: {
itemList: {
type: itemListType,
resolve:() => getItems(),
}
}
})
})
Как теперь, запрос:
itemList {
items {
name
}
}
его возвращения:
{
"data": {
"itemList": {
"items": null
}
}
}
Любая помощь действительно очень приветствуется! : D
С уважением!
Это на самом деле обещание. Но когда вы говорите массив itemType. Мне нужно каким-то образом их преобразовать? или просто с массивом объектов, который имеет свойство 'name', то есть' '' [{name: 'asd'}] '' ' – Forres
Объекты в массиве могут быть любыми, что вы хотите, поэтому' {name: 'asd' } 'отлично. – helfer