typescript - Nest 无法解析 ResolutionService 的依赖项
问题描述
我目前正在探索nestjs并遇到了这个错误:
错误:Nest 无法解析 ResolutionService (?) 的依赖项。请确保索引 [0] 处的参数 ResolutionRepository 在 ResolutionService 上下文中可用。
潜在的解决方案:
- 如果 ResolutionRepository 是提供者,它是当前 ResolutionService 的一部分吗?
- 如果 ResolutionRepository 是从单独的 @Module 导出的,那么该模块是否导入到 ResolutionService 中?@Module({ imports: [ /* 包含 ResolutionRepository 的模块 */ ] })
我在这里做错了什么?
分辨率.module.ts
import { Module } from '@nestjs/common';
import { TypeOrmModule } from '@nestjs/typeorm';
import { ResolutionEntity } from './resolution.entity';
import { ResolutionService } from './resolution.service';
import { ResolutionRepository } from './resolution.repository';
@Module({
imports: [TypeOrmModule.forFeature([ResolutionEntity])],
providers: [ResolutionRepository, ResolutionService],
exports: [ResolutionService],
})
export class ResolutionModule {}
分辨率.service.ts
import { Injectable } from '@nestjs/common';
import { ResolutionEntity } from './resolution.entity';
import { ResolutionRepository } from './resolution.repository';
@Injectable()
export class ResolutionService {
constructor(private readonly resolutionRepository: ResolutionRepository) {}
async getAllByName(name: string): Promise<ResolutionEntity[]> {
return this.resolutionRepository.getAllByName(name);
}
}
解决方案
您在应用程序的某处有ResolutionService
一个数组。imports
提供者从不进入imports
数组,只在providers
. 如果您在另一个模块中需要此提供程序,则ResolutionModule
应该ResolutionService
在providers
和exports
数组中具有 ,然后这个新模块应该ResolutionModule
在imports
数组中。
推荐阅读
- azure - 具有运行时版本的天蓝色函数应用程序:错误
- c# - 在 asp.mvc 中重复 Newtonsoft.Json 包问题
- reactjs - 通过 React 中的 signedUrl 上传 Amazon S3 (PUT) 的 403 禁止错误
- html - 如何对齐一组中的表单元素
- flutter - 从一个按钮或容器到另一个按钮或容器的动画选择
- java - Java驱动程序类主方法创建驱动程序类的新实例
- laravel - 如何在数据库中添加 zip 文件(laravel 项目)
- nginx - 设置 nginx 以在目录浏览时重定向到域的根目录
- reactjs - 有没有办法绕过 ts 2339 来访问类方法或者是否可以在 typescript 中定义类之外的类方法?
- c++ - 编写程序打印 1 到 1000 之间的所有阿姆斯壮数字