inflearn logo
강의

講義

知識共有

[Code Factory] [初級] NestJS REST API バックエンド完全征服マスタークラス - NestJS Core

Override Options を使う

common.service 의 cursorPaginate 일반화 할때 nextUrl 생성시 질문입니다.

374

Moon

投稿した質問数 2

0

common.service 의 cursorPaginate 일반화 관련 질문입니다.

nextUrl 생성할 때 아래와 같이 searchParams 를 생성하는데 이 부분은 일반화 할 수없는건가요?

if (nextUrl) {
  for (const key of Object.keys(dto)) {
    if (dto[key]) {
      if (
        key !== 'where__id__more_than' &&
        key !== 'where__id__less_than'
      ) {
        nextUrl.searchParams.append(key, dto[key]);
      }
    }
  }

  let key = null;

  if (dto.order__createdAt === 'ASC') {
    key = 'where__id__more_than';
  } else {
    key = 'where__id__less_than';
  }

  nextUrl.searchParams.append(key, lastItem.id.toString());
}

 

javascript typescript rest-api nestjs backend

回答 3

0

Moon

네~

답변 감사합니다^^

0

Moon

제가 질문을 애매하게 했네요. 죄송합니다.

composeFindOption 처럼 nextUrl 생성 부분도 만들 수 있는지 궁금했었습니다.

예를 들어 현재 코드에서는 where__likeCount__more_than 라는 쿼리파라미터가 만들어 질때마다 netxUrl 에서 하나 하나씩 추가 시켜 줘야해서 이부분도 composeFindOption 처럼 자동 파싱이 가능한지 입니다.

1

codefactory

composeFindOption과 똑같은 방식으로 말씀하시는게 맞을까요?

맞다면 완전 똑같이 사용하면 되는데 (스트링 값과 원하시는 값을 key value로 페어링해서 매핑하는 방식) 아무래도 이 질문이 아닐 것 같아서 제가 아직도 잘 이해를 못하는 것 같습니다. (제대로 이해 했다면 방식은 완전 똑같습니다)

예를들면 where는 기본으로 붙여주고 칼럼 이름은 언더스코어 뒤에 붙여주고 (이 부분은 위에서 말씀드린대로 key value로 정의해둔 다음 key 값을 기반으로 찾으면 되겠죠) more_than 같은 부분도 마찬가지로 말씀하신 composeFindOptions에서 하는 방식대로 구현하시면 됩니다.

혹시 제가 잘못 이해하고 있다면 다시 질문 부탁드립니다!

0

codefactory

안녕하세요!

해당 부분을 일반화 한다는게 어떤 말씀이신지 잘 모르겠습니다.

예제를 보여주시겠어요?

감사합니다.

cascade 질문

0

38

1

@types/bcrypt 설치과정이 누락된것같습니다.

0

45

1

process.env port key 에러

0

45

1

추상화

0

48

1

[공유] DTO optional 필드가 undefined로 잡혀 TypeORM 조건이 깨지는 현상

0

93

2

where 키워드가 들어가는 메서드와 아닌 메서드

0

56

1

BearerTokenGuard에서 db를 조회해서 유저 정보를 불러오는 이유?

0

69

1

app.controller app.service 는 지워도되나요?

0

69

1

@JoinColumn을 쓰는 경우와 안쓰는 경우의 차이

0

78

1

포트 3000에서 listen하는 곳까지 넘어가지 않습니다.

0

64

1

PickType 사용 시 `as const`를 꼭 사용해야 하나요?

0

102

2

socket connect 오류

0

96

2

강의를 들으면서 궁금한 점

0

97

2

DELETE 요청의 반환값은 어떤 기준으로 결정하는 게 좋을까요?

0

58

2

커리큘럼 질문

0

98

2

put 요청은 언제

0

90

3

typeorm VS prisma

0

343

2

142 강의 > 4:00 > 포스트멘 활용 관련 질문 드립니다.

0

76

2

User 데코레이터 버그 수정 전달드립니다.

0

67

1

git 주소 부탁드립니다.

0

112

2

nest g resource 명령어 에러

0

99

2

로그인 엔드포인트 관련 질문

0

84

2

yarn으로 express 다운 후 node 2_server.js 실행 안되는 경우

0

146

3

"흔히 사용되는 메서드" 강의 관련 질문입니다~

0

95

2