gpt4 book ai didi

typescript - 不能表示非枚举值

转载 作者:行者123 更新时间:2023-12-04 11:22:13 24 4
gpt4 key购买 nike

在我的graphQL API(带有 typescript 和type-graphql)中,我试图运行一个突变输入类型 有一个 枚举 值定义如下

export enum GenderType {
female = 'female',
male = 'male',
}

registerEnumType(GenderType, {
name: 'GenderType',
});
我正在尝试执行此更改。
mutation {
registerStudent(data: {
name: "John",
gender: "male",
}) {
id
}
}
但是当我尝试执行突变时,它给出了一个错误说

"message": "Enum "GenderType" cannot represent non-enum value: "female". Did you mean the enum value "female" or "male"?",


我认为这是因为我如何在 中使用 registerEnumType 定义枚举类型类型-graphql .
如何玷污 enum with type-graphql

最佳答案

💡 发现问题了...
实际上问题位于我通过的突变对象数据上。
首先,我将性别类型作为 传递字符串 导致问题的原因。

mutation {
registerStudent(data: {
name: "John",
gender: "male",
}) {
id
}
}
这是错误的 bcz 这是一个字符串,程序期望我们在枚举中定义一个值,因此按原样传递枚举值。
mutation {
registerStudent(data: {
name: "John",
gender: male,
}) {
id
}
}

关于typescript - 不能表示非枚举值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63010460/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com