안녕하세요. 질문자님께서 puzzledata에 초기값으로 1개의 아이템만을 할당하셨기 때문에 최초 컴포넌트 렌더링 시에는 puzzledata[0]에만 값이 존재하며, puzzledata[1], puzzledata[2]에는 값이 존재하지 않으므로 Uncaught TypeError: Cannot read properties of undefined (reading 'src')라는 에러가 발생했을 것입니다. 따라서 해당 에러를 방지하기 위해서는 <SwiperSlide><img src={puzzledata[0].img}/></SwiperSlide> <SwiperSlide><img src={puzzledata[1].img}/></SwiperSlide> <SwiperSlide><img src={puzzledata[2].img}/></SwiperSlide> 위 부분을 {puzzledata.map(item => <SwiperSlide key={item.id}><img src={item.img}/><SwipserSlide>)} 와 같이 변경하시면 되겠습니다. 변경한 코드는 아래와 같이 동작합니다. 1. 최초 컴포넌트 렌더링 1-1) puzzledata = [{...}] 1-2) {puzzledata.map(item => <SwiperSlide key={item.id}><img src={item.img}/><SwipserSlide>)}에서 총 1개의 SwiperSlide만 렌더링 2. setPuzzledata 호출 시 컴포넌트 리렌더링 2-1) puzzledata = [{...}, {...}, {...}] 2-2) {puzzledata.map(item => <SwiperSlide key={item.id}><img src={item.img}/><SwipserSlide>)}에서 총 3개의 SwiperSlide가 렌더링 아래 gist 링크는 제가 테스트해 본 코드인데요, 궁금하시면 한 번 참고해보세요! https://gist.github.com/sekhyuni/1e8ab8d656da777310b55bf46a82d58a

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2022년 12월 12일 오후 2:29

댓글 0

    함께 읽은 게시물

    🤖 최초의 AI 브라우저, Dia 직접 써봤습니다! 🌐

    ... 더 보기

    으아~ 드디어 아미고(Ameego) 빅피처 앱스토어 제출! 아직 마무리 작업이 꽤 남았지만 그래도 주말이면 출시 가능할 듯.


    서버와 앱쪽 둘 다 기존 구성의 변경이 예상보다 범위가 커서 포상으로(?) 버전을 크게 올렸음.


    ... 더 보기

    조회 1,010


    생각해볼 부분이 많은 chart

    우리는 이런 세상에 살고 있고, 이중 몇몇은 더 잘될것이고, 몇몇은 말이되는 multiple로 내려올것.


    올해로 개발자 생활이 햇수로 20년째다

    2005년 7월에 일을 시작했으니, 올해로 개발자 생활이 햇수로 20년째다. 중간에 공백이 조금씩 있었으니 꽉 채운 스무 해는 아니지만, 숫자가 주는 무게는 여전하다. 20년이라는 시간이 흘렀다는 사실이 새삼 신기하게 느껴진다.

    ... 더 보기

    DDD와 AI

    ... 더 보기

     • 

    저장 15 • 조회 1,594


    AI와 코딩할 때, 혹시 결과만 말하고 계신가요?
    얼마 전 프로필 페이지를 AI와 함께 만들면서 이상한 걸 발견했어요.

    ... 더 보기

    - YouTube

    youtu.be

     - YouTube

     • 

    저장 14 • 조회 1,445