[Error Handling] Nestjs 의 typeorm Repository 에러

Jes·2022년 10월 29일
0
Error: Nest can't resolve dependencies of the AuthService 
(a, b, ?). 
Please make sure that the argument Repository at index [2] is
available in the AuthModule context.

Potential solutions:
- If Repository is a provider, is it part of the current AuthModule?
- If Repository is exported from a separate @Module, 
is that module imported within AuthModule?
   @Module({
    imports: [ /* the Module containing Repository */ ]
  })

위와 같은 에러를 여러번 만났다.
결론은 @InjectRepository() 를 하지 않아서 발생한 에러이다.

repostroy 2개를 사용 하는데, 각각 설정 해 줘야한다.

/// auth.service.ts
@Injectable() // Injectable 최상단 호출,
export class AuthService {
  constructor(
    @InjectRepository(AEntity) 
    @InjectRepository(BEntity)
   	private usersRepository: Repository<AEntity>,
    private tokenRepository: Repository<BEntity>,
     }

처음 위와같이 같은것 끼리 묶었는데, 인식을 하지 못해 에러가 났다. 아래처럼 변경하니 문제가 해결되었다.

@Injectable() // Injectable 최상단 호출,
export class AuthService {
  constructor(
    private readonly jwtService: JwtService,
    @InjectRepository(AEntity) // InjectRepository 각각 호출
    private usersRepository: Repository<AEntity>,

    @InjectRepository(BEntity)
    private tokenRepository: Repository<BEntity>,
  ) {}
}
profile
Escape Newbie

0개의 댓글