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>, ) {} // 业务逻辑 }
登录后复制
解决方式
- 移除 app.module.ts 中冗余的 providers 和 controllers 代码。
- 确保 bookentity 在 typeormmodule.forfeature 中被引用。
如此修改后,nest 便可以正确解析 bookservice 的依赖关系,消除错误提示。
以上就是Nest 中 TypeOrm 的正确使用:为什么会出现“Nest can't resolve dependencies of the BookService”?的详细内容,更多请关注其它相关文章!
Article Links:https://www.hinyin.com/n/210463.html
Article Source:admin
Article Copyright:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。