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

이재윤님의 프로필 이미지

작성한 질문수

코드로 배우는 React with 스프링부트 API서버

페이지처리를 위한 DTO설계

리스트 번호 클릭시 current가 항상 0입니다.

24.02.10 18:01 작성

·

286

1

섹션 3. 리액트와 API서버 통신 - 목록처리(1) 학습중인데요.

 

serverData를 console.log로 찍어보면

 

current가 항상 0입니다.

 

어디서 확인해야할까요?

답변 2

1

구멍가게코딩단님의 프로필 이미지
구멍가게코딩단
지식공유자

2024. 02. 10. 21:46

우선은 PageResponseDTO의 생성자를 살펴보실 필요가 있을듯 합니다.

@Builder(builderMethodName = "withAll") public PageResponseDTO(List<E> dtoList, PageRe questDTO pageRequestDTO, long totalCount) { ...생략...

this.current = pageRequestDTO.getPage();

}

파라미터로 전달되는 PageRequestDTO안에 getPage( )의 값을 먼저 확인하시고..

this.current 부분이 제대로 되어 있는지 살펴봐주세요..

 

해결이 안되시면 cafe.naver.com/gugucoding 에 프로젝트를 첨부해서 질문으로 남겨주시면 실행해서 보겠습니다.

 

이재윤님의 프로필 이미지
이재윤
질문자

2024. 02. 11. 11:53

this.current = pageRequestDTO.getPage();

이 부분이 빠진게 맞았네요.
어제 this.current를 만들고 무언가 선언까진 했었는데, 잘못 선언해놨었나봅니다.

감사합니다~

0

이재윤님의 프로필 이미지
이재윤
질문자

2024. 02. 10. 18:12

일단 ListComponent에서

useEffect(() => {
    getList({ page, size }).then((data) => {
      
      setServerData({
        ...data,
        current: data.pageRequestDTO.page,
      });
    });
  }, [page, size]);

이렇게 처리하긴 했는데.. 근본적인 방법은 아닌거같습니다.