AWS GraphQL:变量'input'强制为NonNull类型'Input!'强制Null值.

Jos*_* D. 8 reactjs graphql aws-appsync aws-amplify

我正在使用ReactJS并aws-amplify执行graphql操作.

码:

import {
   API,
   graphqlOperation
} from 'aws-amplify';

import { UpdateInput } from './mutations.js';

// Call mutation
const input = { /* some values */ };
API.graphql(graphqlOperation(UpdateInput, input)).then(...);
Run Code Online (Sandbox Code Playgroud)

GraphQL变异定义:

export const UpdateInput = `mutation UpdateInput($input: Input!) {
   updateInput(input: $input) {
      id, 
      name
   }   
}`
Run Code Online (Sandbox Code Playgroud)

GraphQL架构:

input Input {
   id: ID!
   name: String
}

type Mutation {
   updateInput(input: Input!): String
}
Run Code Online (Sandbox Code Playgroud)

但是,我收到一个错误:

[Log]变量'input'强制NonNull类型'Input!'的Null值

使用AWS控制台我的突变工作并且input是NonNull(使用调试器)

是什么导致错误?

Jos*_* D. 18

关键是input.

因此aws-amplifygraphqlOperation将搜索输入字段.

它适用于以下内容:

API.graphql(graphqlOperation(UpdateInput, {
   input: input // With added input field
})).then(...);
Run Code Online (Sandbox Code Playgroud)