인프런 커뮤니티 질문&답변

지비님의 프로필 이미지
지비

작성한 질문수

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

@TransactionRepository 사용시 expected 1 arguments, but got 0. (TS2554 에러)

작성

·

919

0

안녕하세요. 제로초님.

유익한 강의  잘 보고 있습니다!!

TransactionRepository 데코레이터 관련 질문 입니다.

@Transaction()

async getAll(@TransactionRepository(Users) usersRepository: Repository<Users>) {

...

}

만약 위처럼 Transaction 데코레이터를 쓴다고 할 때

Controller에서는

@Get()

async getUsers() {

    return  await this.usersService.getAll()        //  여기서 `Expected 1 arguments, but got 0.` 에러 발생.

}

작성하면, 요청은 잘가는데 Typescript 에러 메세지가 뜨는데

또다른 작업을 해줘야 하나요??

답변 1

1

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

@Transaction()을 controller에 붙이시고

Controller에 주입된 @TransactionRepository(Users) usersRepository를

this.service.method(usersRepository) 이런 식으로 넘기세요.

서비스에서는 데코레이터 대신 매개변수로 전달받으시면 됩니다.

지비님의 프로필 이미지
지비
질문자

해결되었습니다. 감사합니다!!

지비님의 프로필 이미지
지비

작성한 질문수

질문하기