海印网
海印网

Nest 中 TypeOrm 的正确使用:为什么会出现“Nest can\'t resolve dependencies of the BookService”?

admin数码00

Nest 中 TypeOrm 的正确使用:为什么会出现“Nest can\'t resolve dependencies of the BookService”?-第1张图片-海印网

nest 中 typeorm 的正确使用

在使用 nest 时,出现错误消息“nest can't resolve dependencies of the bookservice”,提示 bookentityrepository 没有在 appmodule 中注册。以下是解决方法:

代码示例

app.module.ts:

@module({
    imports: [
        typeormmodule.forroot({
            // 数据库配置
        }),
        bookmodule,
    ]
})
export class appmodule {}

登录后复制

book.module.ts:

@module({
  imports: [typeormmodule.forfeature([bookentity])],
  controllers: [bookcontroller],
  providers: [bookservice],
  exports: [bookservice]
})
export class bookmodule {}

登录后复制

book.service.ts:

import { InjectRepository } from '@nestjs/typeorm';
import { Repository } from 'typeorm';

export class BookService {
    constructor(
        @InjectRepository(BookEntity)
        private readonly bookRepository: Repository<BookEntity>,
    ) {}

    // 业务逻辑
}

登录后复制

解决方式

  1. 移除 app.module.ts 中冗余的 providers 和 controllers 代码。
  2. 确保 bookentity 在 typeormmodule.forfeature 中被引用。

如此修改后,nest 便可以正确解析 bookservice 的依赖关系,消除错误提示。

以上就是Nest 中 TypeOrm 的正确使用:为什么会出现“Nest can't resolve dependencies of the BookService”?的详细内容,更多请关注其它相关文章!

Tags: 正确代码

Sorry, comments are temporarily closed!