小编Sch*_*lla的帖子

在多个项目之间共享 prisma 类型和枚举

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

import { Prisma } from "@prisma/client";

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

export type MinimalModelXY = Prisma.ModelXYGetPayload<{
    select: typeof minimalSelect;
}>;
Run Code Online (Sandbox Code Playgroud)

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

import { EnumXY } from "@prisma/client";
Run Code Online (Sandbox Code Playgroud)

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

有一些解决方案可以将整个 prisma 客户端提取到 npm 包中(请参阅此处),但是,这不是我想要做的。

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

npm typescript prisma

5
推荐指数
1
解决办法
2347
查看次数

标签 统计

npm ×1

prisma ×1

typescript ×1