gpt4 book ai didi

node.js - 如何将特殊字符放入 apollo graphQL 服务器的枚举值中?

转载 作者:行者123 更新时间:2023-12-05 01:32:01 24 4
gpt4 key购买 nike

我在 apollo-graphQL 中的枚举类型有问题,我在 nodejs 中使用 apollo-server。问题是我不能使用像 image/jpeg 或 svg+xml 这样的值的字符串。这些值无法解析为枚举,这给我带来了错误。

Enum values

enter image description here

谁能告诉我如何解决这个问题?

最佳答案

不幸的是,答案是你不能。根据 GraphQL 规范,一个 enum is defined作为

Name but not true or false or null

这里的“名称”是指this definition ,它用正则表达式定义了一个“名称”

/[_A-Za-z][_0-9A-Za-z]*/

这意味着枚举(定义为“名称值”)只能包含字母、数字或下划线,并且第一个字符不能是数字。此外,规范建议您使用“全部大写”,我读到的意思是“CONSTANT_CASE”。

如果枚举确实是您想要的,按照规范的建议,您“应该”使用

enum ImageMimeTypes {
IMAGE_APNG
IMAGE_AVIF
IMAGE_GIF
IMAGE_JPEG
IMAGE_PNG
IMAGE_SVG_XML
IMAGE_WEBP
}

尽管我个人也喜欢将我的枚举命名为单一常量大小写——这样它所代表的东西就不那么令人惊讶了——所以我可能会称它为 IMAGE_MIME_TYPE .

关于node.js - 如何将特殊字符放入 apollo graphQL 服务器的枚举值中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65864564/

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