AWS GraphQL:变量 'input' 已强制 NonNull 类型为 Null 值 'Input!'
AWS GraphQL: Variable 'input' has coerced Null value for NonNull type 'Input!'
我正在使用 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(...);
GraphQL 突变定义:
export const UpdateInput = `mutation UpdateInput($input: Input!) {
updateInput(input: $input) {
id,
name
}
}`
GraphQL 架构:
input Input {
id: ID!
name: String
}
type Mutation {
updateInput(input: Input!): String
}
但是,我得到一个错误:
[Log] Variable 'input' has coerced Null value for NonNull type
'Input!'
使用 AWS 控制台我的突变有效并且 input
是 NonNull(使用调试器)
知道导致错误的原因吗?
密钥是 input
在 updateInput
突变中。
updateInput(input: Input!): String
// ^^^^^ input key
因此,需要在传递的变量中指定正确的键。
const variables = {
input: someData, // key is "input" based on the mutation above
};
API.graphql(graphqlOperation(UpdateInput, variables)).then(...);
我正在使用 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(...);
GraphQL 突变定义:
export const UpdateInput = `mutation UpdateInput($input: Input!) {
updateInput(input: $input) {
id,
name
}
}`
GraphQL 架构:
input Input {
id: ID!
name: String
}
type Mutation {
updateInput(input: Input!): String
}
但是,我得到一个错误:
[Log] Variable 'input' has coerced Null value for NonNull type 'Input!'
使用 AWS 控制台我的突变有效并且 input
是 NonNull(使用调试器)
知道导致错误的原因吗?
密钥是 input
在 updateInput
突变中。
updateInput(input: Input!): String
// ^^^^^ input key
因此,需要在传递的变量中指定正确的键。
const variables = {
input: someData, // key is "input" based on the mutation above
};
API.graphql(graphqlOperation(UpdateInput, variables)).then(...);