인프런 커뮤니티 질문&답변
25-04 pointTransaction.service.ts 에러
해결된 질문
작성
·
656
0
      // 2. 유저의 돈 찾아오기
      // const user = await this.userRepository.findOne({
      //   where: { id: currentUser.id },
      // });
      const user = await queryRunner.manager.findOne(
        User,
        { id: currentUser.id },
        { lock: { mode: "pessimistic_write" } },
      );
위의 코드에서 { lock: { mode: "pessimistic_write" } }, 부분이 추가되면서 아래의 에러가 발생하고 있습니다.
src/apis/pointTransaction/pointTransaction.service.ts:52:9 - error TS2554: Expected 2 arguments, but got 3.
52 { lock: { mode: "pessimistic_write" } },
테스트를 진행해보려면 어떻게 코드 수정이 되어야 할런지요?
답변 2
1
안녕하세요 dreaminliner님!
업로드 해주신 내용을 확인해 본 결과, 강의에서 사용하는 typeorm과 설치 버전이 상이해 발생한 문제로 보여집니다.
해당 문제를 해결하고 이후 강의에서 같은 문제가 발생하지 않도록 node_modules 폴더를 삭제한 뒤, 아래의 내용을 따라 버전을 fix해 새롭게 설치해 주시길 바랍니다.
- node_modules폴더를 삭제합니다.
- package.json파일의- dependencies: {}안에 작성된 내용 중,- "typeorm": "..."을 삭제해 주세요.
- 터미널에 - yarn add typeorm@0.2명령어를 입력해 0.2 버전의 typeorm을 설치해 주세요.
이후에는 관련된 에러가 발생하지 않을 것으로 예상됩니다!
감사합니다 :)
1
제 생각엔 아마 강의랑 typeorm 버전이 다른것 같습니다.
최신 버전으로 하시려면
const user = await queryRunner.manager.findOne(User, {
        where: { id: currentUser.id },
        lock: { mode: 'pessimistic_write' },
      });이렇게 하셔야 될 듯 싶네요.








답변 감사합니다.