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

home2 게시판 React 게시판 react router3 강의 숙제 관련 질문 있습니다

react router3 강의 숙제 관련 질문 있습니다

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

    kmj
    참가자

    제가 자바스크립트에 익숙하지 않아서 일단 제가 할 수 있는 반복문으로 구현을 해보았는데, 다른 오류도 아니고 id를 인식할 수 없다고 오류가 뜨는데 뭐가 문제인지 모르겠습니다. 제가 봐도 제 코드가 약간 허접한 것 같긴 한데.. 반복문으로 짜려면 어떻게 고쳐야 할까요?

    일단 제가 짠 코드는 useParams를 담고 있는 id변수랑 props.shoes 전체의 id값을 비교해서 같으면 title을 보여주는 식으로 짰고 map함수를 이용해보았습니다

     

    import React, {useState} from 'react';
    import { useHistory, useParams } from 'react-router-dom';

    function Detail(props) {

        let { id } = useParams();
        let history = useHistory();

        return(
            <div className="container">
                <div className="row">
                    <div className="col-md-6">
                        이미지
                    </div>
                    <div className="col-md-6 mt-4">
                    <h4 className="pt-5">
                        {props.shoes.map((i)=>{
                            return(
                                id === props.shoes[i].id
                                ? props.shoes[i].title
                                : null
                            )
                        })}
                    </h4>
                   
                    <p>{props.shoes[id].content}</p>
                    <p>{props.shoes[id].price}원</p>
                    <button className="btn btn-danger">주문하기</button>
                    <button className="btn btn-danger" onClick={()=>{
                        history.goBack();
                    }}>뒤로가기</button>  
                    </div>
                </div>
            </div>
        )
      }

      export default Detail;

     

    Detail.js이고 오류사항은 다음과 같습니다

    #24844

    codingapple
    키 마스터

    밑의 글들처럼 id를 문자말고 숫자로 바꿔봅시다 

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

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

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

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