从 React 应用程序向 graphql API 发送一个枚举
Send an enum to graphql API from react app
我有一个输入(附图)需要从 React 应用程序发送到 graphql api。
我正在使用下面的代码将这个对象和带有 init 的枚举发送到 graphql api
Reactjs 代码
const RequestActionEnum = {
NEW: 'New',
UPDATE: 'Update',
ARCHIVE: 'Archive'
}
LocalCodeMutation({
variables: {
data: {
id: null,
city: values.jurisdiction,
country: values.country,
description: values.description,
edition: values.edition,
name: values.codeName,
note: 'test',
requestType: RequestActionEnum.NEW, // this is where i am sending enum value to api
state: values.state
}
}
});
下面的代码是我调用突变的地方
const [LocalCodeMutation] = useMutation(LOCALCODE_MUTATION, {
refetchQueries: () => [
{ query: GET_LOCALCODES },
],
});
export const LOCALCODE_MUTATION = gql`
mutation LocalCodeMutation($data: LocalCodeRequestParamsInput) {
localCodeMutation(data: $data) {
ok
errors
localCodeInsertedId
}
}
`;
我在发送到 API:
时收到此错误
Error: GraphQL error: Variable $data got invalid value.
如何从 React 组件向 graphQL api 发送枚举值。
任何人都可以对此提出任何想法吗?
RequestActionEnum
的枚举值为
NEW
UPDATE
ARCHIVE
如果您将此枚举用作文字(而不是变量),您可以这样写:
{
someField(someArgument: NEW)
}
同样,如果您使用变量,您将使用 "NEW"
。相反,您使用的是 "New"
,这不是该特定枚举的有效枚举值。
FWIW,如果您真的通读到错误的结尾,它也会告诉您很多。
我有一个输入(附图)需要从 React 应用程序发送到 graphql api。
我正在使用下面的代码将这个对象和带有 init 的枚举发送到 graphql api Reactjs 代码
const RequestActionEnum = {
NEW: 'New',
UPDATE: 'Update',
ARCHIVE: 'Archive'
}
LocalCodeMutation({
variables: {
data: {
id: null,
city: values.jurisdiction,
country: values.country,
description: values.description,
edition: values.edition,
name: values.codeName,
note: 'test',
requestType: RequestActionEnum.NEW, // this is where i am sending enum value to api
state: values.state
}
}
});
下面的代码是我调用突变的地方
const [LocalCodeMutation] = useMutation(LOCALCODE_MUTATION, {
refetchQueries: () => [
{ query: GET_LOCALCODES },
],
});
export const LOCALCODE_MUTATION = gql`
mutation LocalCodeMutation($data: LocalCodeRequestParamsInput) {
localCodeMutation(data: $data) {
ok
errors
localCodeInsertedId
}
}
`;
我在发送到 API:
时收到此错误Error: GraphQL error: Variable $data got invalid value.
如何从 React 组件向 graphQL api 发送枚举值。
任何人都可以对此提出任何想法吗?
RequestActionEnum
的枚举值为
NEW
UPDATE
ARCHIVE
如果您将此枚举用作文字(而不是变量),您可以这样写:
{
someField(someArgument: NEW)
}
同样,如果您使用变量,您将使用 "NEW"
。相反,您使用的是 "New"
,这不是该特定枚举的有效枚举值。
FWIW,如果您真的通读到错误的结尾,它也会告诉您很多。