首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跨多个项目共享prisma类型和枚举

跨多个项目共享prisma类型和枚举
EN

Stack Overflow用户
提问于 2022-09-26 10:35:49
回答 1查看 258关注 0票数 3

目前,我正在开发一个api,它使用prisma提供数据。这个api被多个项目使用。在api中,我使用Prisma.ModelGetPayload生成类型来定义某些api响应的返回类型。

代码语言:javascript
复制
import { Prisma } from "@prisma/client";

export const minimalSelect = Prisma.validator<Prisma.ModelXYSelect>()({
    id: true,
    name: true
});

export type MinimalModelXY = Prisma.ModelXYGetPayload<{
    select: typeof minimalSelect;
}>;

或者可以简单地从prisma客户端导入枚举。

代码语言:javascript
复制
import { EnumXY } from "@prisma/client";

这些枚举和类型定义依赖于api生成的Prisma客户机。

有些解决方案会将整个prisma客户端提取到npm包(请看这里)中,但是,这不是我想要做的。

是否可以将这些类型提取到npm包中,以便在多个项目之间共享它们而不提取整个prisma客户端?

EN

回答 1

Stack Overflow用户

发布于 2022-10-12 07:46:50

如果您想导出由Prisma生成的所有类型,可以在node_modules/.prisma/client/index.d.ts中找到所有这些类型。

您可以在npm包中导出这个文件,并在前端应用程序中使用它。

您可以使用的另一种方法是将schema.prisma发布到npm包中。然后,在您的另一个项目中,您可以从schema.prisma文件生成一个prisma客户端库,这样就不需要导出PrismaClient。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73852913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档