1

我有一个用graphQl和prisma-nexus用打字稿编写的节点项目。

prismaObjectType from 的使用import { prismaObjectType } from 'nexus-prisma'会产生一个过于复杂而无法表示的联合类型。

我仍然可以在开发中使用该项目,但是当我使用tsc -p构建失败并出现此错误时error TS2590: Expression produces a union type that is too complex to represent.

有人遇到这个问题吗?知道如何解决它或至少在构建项目时忽略它吗?

提前谢谢了。

4

2 回答 2

1

解决方案发布nexus-schema-plugin-prisma在 GitHub 上的一个问题上。

无论您在哪里使用prismaExtendType,还要将对象类型的字符串作为类型参数传递。例如,如果您有一个 prisma“用户”模型类型,请更改:

prismaObjectType({/*config object*/}) 

至:

prismaObjectType<"User">({/*config object*/}) 
于 2020-05-04T15:44:19.360 回答
0

稍微扩展一下我的评论:

目前为此提交了一个GitHub 问题。推荐的解决方案是将 Typescript 放到3.4.X.

Prisma 1 目前正被淘汰,取而代之的是v2 / Photon。尽管计划进行持续维护,但似乎大多数资源都被转移了:

Prisma 1 将继续维护。然而,大部分 Prisma 工程资源将用于Prisma 2的开发

不会为 Prisma 1 开发新功能。

我确实希望这个问题得到解决,但我认为推荐的解决方案是升级到 Photon 并远离 Prisma 1。

于 2019-09-19T05:29:17.627 回答