Deno环境下无法从Prisma Schema导入枚举的问题咨询
解决Prisma枚举导入失败的问题
你遇到的错误是因为Prisma生成的客户端不会将枚举直接作为顶级导出,而是把所有枚举、模型类型等嵌套在Prisma命名空间下。下面是两种正确的使用方式:
方式一:通过Prisma命名空间直接访问
import { Prisma } from "./generated/client/deno/edge.ts"; // 函数参数类型示例 function logMessage(level: Prisma.Level, type: Prisma.LogType) { console.log(`[${level}] ${type} message`); }
方式二:解构Prisma命名空间中的枚举
如果想单独使用枚举名称,可以先解构:
import { Prisma } from "./generated/client/deno/edge.ts"; const { Level, LogType } = Prisma; // 函数参数类型示例 function logMessage(level: Level, type: LogType) { console.log(`[${level}] ${type} message`); }
额外注意
修改prisma.schema后,务必执行prisma generate命令重新生成客户端,否则新添加的枚举不会出现在生成的代码中。
内容的提问来源于stack exchange,提问作者James
相关产品推荐
相关产品推荐

