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

home2 게시판 React 게시판 localStorage로 만드는 최근 본 상품 기능 2

localStorage로 만드는 최근 본 상품 기능 2

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

    이희재
    참가자
    선생님 기능은 정상작동합니다
    스크린샷 2024-01-28 193527
    문제는 새로고침을 하면 
    
    스크린샷 2024-01-28 193636
    
    이 화면이 자꾸 나와요
    /////////////////////// App.js ////////////////////////////
    /////////////////////// function App ////////////////////////////
      useEffect(() => {
        if (!localStorage.getItem("watched")) {
          localStorage.setItem("watched", JSON.stringify([]));
        }
      }, []);
    
    <Watch shoes={shoes} />
    ////////////////////// function App ////////////////////////////
    ////////////////////// function Watch////////////////////////////
    
    function Watch(props) {
      let watched = JSON.parse(localStorage.getItem("watched"));
      return (
        <ul className="show">
          {watched.map((a) => (
            <li key={a}>
              <img
                className="img"
                src={`https://codingapple1.github.io/shop/shoes${a + 1}.jpg`}
              />
              <h4>{props.shoes[a].title}</h4>
            
          ))}
        
      );
    }
    ////////////////////// function Watch////////////////////////////
    
    /////////////////////// App.js ////////////////////////////
    
    /////////////////////// Detail.js ////////////////////////////
      if (확인 === -1) {
          watched.push(찾은상품.id);
          localStorage.setItem("watched", JSON.stringify(watched));
        }
      }, []);
    /////////////////////// Detail.js ////////////////////////////
    
    제가 수정한 부분들 코드만 올렸습니다
    
    한번 봐주세요!
    #111728

    codingapple
    키 마스터
    .title 왼쪽이 비어있다는 소리같은데 shoes라는거 props로 전송잘했나 확인합시다
    #122789

    김보름
    참가자
    저도 같은 문제가 있어서 검색 중 이었는데,
    최근 본 상품에는 id가 4인거 분홍색 신발이 있는데,
    상품 더보기를 해야 저게 로드가 되서 새로고침하면 shoes 에 없어서 그런거 같은데요
    0,1,2만 들어있어서요
    어떻게 해결할 수 있을까요?
    
    #122819

    codingapple
    키 마스터
    새로고침시 로컬스토리지에 없는 상품이 있으면 서버에서 가져오거나
    로컬스토리지에 상품 정보들을 더 저장하거나 그러면 될듯요
4 글 보임 - 1 에서 4 까지 (총 4 중에서)
  • 답변은 로그인 후 가능합니다.

About

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

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

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