1

Amplify 会自动为删除生成突变,如下所示:

export const deleteTodo = /* GraphQL */ `
 mutation DeleteTodo($input: DeleteTodoInput!) {
  deleteTodo(input: $input) {
   index
   body
   hasRead
 }

这就是我在 App.js 中的称呼

await API.graphql(graphqlOperation(mutations.deleteTodo, {input: result}));

它返回这样的错误。好像数据还没有通过

message: "The variables input contains a field name 'index' that is not defined for input object type 'DeleteTodoInput' "
4

2 回答 2

0

我不确定是什么result,但您可以尝试:

const result = {
  index: 1,
  body: 'blabla',
  hasRead: true,
}

await API.graphql(graphqlOperation(mutations.deleteTodo, {input: { ...result }}));
于 2020-06-03T23:51:52.700 回答
0

问题在于结果变量。它应该是 {result} 并且应该有索引。如果您没有索引,请将其从查询中删除

const deleteTodo = /* GraphQL */ `
 mutation DeleteTodo($input: DeleteTodoInput!) {
  deleteTodo(input: $input) {
   body
   hasRead
 }

await API.graphql(graphqlOperation(mutations.deleteTodo, {input: {result}));
于 2021-08-26T12:06:29.040 回答