Type-GraphQL 上 JSON 字段的类型

Posted

技术标签:

【中文标题】Type-GraphQL 上 JSON 字段的类型【英文标题】:Type for JSON field on Type-GraphQL 【发布时间】:2021-11-16 01:39:27 【问题描述】:

我在 JSON 类型的 type-graphql 上定义了一个自定义输入字段。我们也在使用 Prisma。我尝试使用 Prisma.JsonValue、Prisma.JsonObject 和 JSON,但我得到了这个错误。欢迎任何建议

【问题讨论】:

请不要使用图像来传达代码或错误。在处理解决方案时,我们需要能够复制/粘贴代码和错误。图像迫使我们重新输入所有内容,因此不鼓励人们帮助您。此外,搜索引擎无法抓取图像,从而使您的问题在搜索解决方案时无法帮助他人。 更多信息请参见“Why not upload images of code on SO when asking a question?”“Discourage screenshots of code and/or errors”“I downvoted because an image of your code is not helpful”“I downvoted because an image of your exception isn't helpful”。 【参考方案1】:

您不能直接使用 Prisma 生成的模型作为 TypeGraphQL 中的类型定义。您将需要创建自定义类为shown in the TypeGraphQL docs(使用@ObjectType()@InputType() 等装饰器)。

您可以考虑使用名为typegraphql-prisma 的第三方库来从 Prisma 生成 TypeGraphQL 类型。但是,在我看来,手动定义类更容易。

此外,我不确定您所说的JsonValue 是什么意思。如果您需要传递任意 JSON 数据,也许您可​​以将 JSON 对象字符串化并将其作为字符串传递?

【讨论】:

以上是关于Type-GraphQL 上 JSON 字段的类型的主要内容,如果未能解决你的问题,请参考以下文章

不能对 Type-GraphQL 字段类型使用类型“对象”

如何在 type-graphql 中使用带整数的 simple-json

如何使用 type-graphql 解析器函数获取 graphql 后端中的选定字段?

使用 type-graphql 和 RESTDataSource 为第二个 api 调用添加字段解析器

如何使用 type-graphql 定义对象类型

Type-GraphQL 的参数错误 - 没有参数类型?