“string”类型的参数不可分配给 prisma.service 上“never”类型的参数

问题描述 投票:0回答:1
import { INestApplication, Injectable, OnModuleInit } from "@nestjs/common";
import { PrismaClient } from "@prisma/client";
@Injectable()
export class PrismaService extends PrismaClient implements OnModuleInit {
  async onModuleInit() {
    await this.$connect();
    console.log("postgresql connected");
  }

  async enableShutdownHooks(app: INestApplication) {
    this.$on("beforeExit", async () => {
      await app.close();
    });
  }
}

错误就在这里

  this.$on("beforeExit", async () => {

我尝试了各种解决方案来解决该问题,运行

npx prisma generate
,或更新软件包,但这些都不起作用。

有什么想法吗?

typescript nestjs prisma
1个回答
0
投票

beforeExit
钩子已从图书馆查询引擎中删除,请阅读更多这里。他们有一个“升级指南”可能会有所帮助。这是他们给出的 Prisma ORM 4 代码作为示例: const exitHandler = () => { // your exit handler code } prisma.$on('beforeExit', exitHandler)

由于这一重大变化,现在无法使用。他们将其替换为

const exitHandler = () => { // your exit handler code } process.on('exit', exitHandler) process.on('beforeExit', exitHandler) process.on('SIGINT', exitHandler) process.on('SIGTERM', exitHandler) process.on('SIGUSR2', exitHandler)

他们还建议删除您服务中的自定义 
enableShutdownHooks

方法。

    

© www.soinside.com 2019 - 2024. All rights reserved.