• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 React 게시판 최근 본 상품 구현 2 질문

최근 본 상품 구현 2 질문

3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 글쓴이
  • #115797

    김정빈
    참가자
    안녕하세요 선생님.
    Detail 페이지에서 localstorage에 자신이 본 상품 데이터를 넣고, 
    App.js 에서 localstorage에 있는 데이터를 useState에 담아 최근 본 상품 목록에 보이게 했는데
    localstorage에서는 Detail 페이지에 들어갈 때 마다 데이터가 잘 들어가지만
    최근 본 상품 목록에는 즉시 반영이 되지 않고 새로고침을 눌러 주어야 업데이트가 되는데 원인을 잘 모르겠습니다.
    
    
    App.js
    이런
    콘솔에 state를 찍어봐도 바로 들어오지 않고 빈 배열로 뜨며 새로 고침을 해주어야 콘솔에 값이 들어옵니다.
    
    
    이럴수가
    그래서 useState의존성 배열에 state를 추가 해보았지만 
    qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
    이러한 에러 문구가 계속 뜹니다.. 
    찾아보니 useCallback을 쓰라는 말도 있던데 정확한 원인을 잘 찾지 못하고 있습니다. ㅠㅠ
    이렇게 동작 되는 원인과 즉시 반영이 안되고 새로고침을 해야 업데이트 되는 이유를 알려주시면 감사하겠습니다!
    #115811

    codingapple
    키 마스터
    state변경되면 실행되는 useEffect 안에서 state변경시켜서 무한루프가 생긴듯요
    최근 본 상품들은 state와 로컬스토리지에 각각 저장해놓고
    로컬스토리지는 새로고침시 기본 state로드하는 용도로만 씁시다
    #115913

    김정빈
    참가자
    감사합니다!
3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠