您好,我有以下问题。我有 prisma 交易,但我想将 prisma 交易客户端传递到这样的函数中:
...
prisma.$transaction(async (tx) => {
someFunction(tx)
})
...
function someFunction(tx: WHATTOTYPEHERE){
}
但是我是用打字稿做的,我不想使用任何类型。但我不知道如何输入交互式 transactin prisma 客户端...“WHATTOTYPEHERE”类型。
如有任何帮助,我们将不胜感激
如果你查看了
$transaction
的定义,你会发现:
$transaction<R>(fn: (prisma: Omit<this, "$connect" | "$disconnect" | "$on" | "$transaction" | "$use">) => Promise<R>, options?: { maxWait?: number, timeout?: number }): Promise<R>
复制/粘贴该定义并编写您自己的类型以供使用:
import { PrismaClient } from "@prisma/client";
type PrismaTransactionClient = Omit<PrismaClient, "$connect" | "$disconnect" | "$on" | "$transaction" | "$use">
function someFunction(tx: PrismaTransactionClient){
// code here
}