С учетом этой схемы:
input TodoInput {
id: String
title: String
}
input SaveInput {
nodes: [TodoInput]
}
type SavePayload {
message: String!
}
type Mutation {
save(input: SaveInput): SavePayload
}
С учетом этого резольвера:
type TodoInput = {
id: string | null,
title: string
}
type SaveInput = {
nodes: TodoInput[];
}
type SavePayload = {
message: string;
}
export const resolver = {
save: (input: SaveInput): SavePayload => {
input.nodes.forEach(todo => api.saveTodo(todo as Todo));
return { message : 'success' };
}
}
Когда я отправил этот запрос:
mutation {
save(input: {
nodes: [
{id: "1", title: "Todo 1"}
]
}) {
message
}
}
Тогда значение для input.nodes
будет undefined
на стороне сервера.
Кто-нибудь знает, что я делаю не так?
Полезная информация:
- Мутация корректно работает со скалярными значениями (такими как String в качестве входных и обратных)
- Я использую машинопись, express и express-graphql.