1. url파라미터가 문자인경우 다른페이지로 이동시키려고 parseInt(id) != NaN 일때만 실행시키고 else로 나머지 경우는 다른 페이지로 가게 해 봤는데 오류가 나는데 이유를 모르겠습니다 어떻게 해야 할까요
구체적인 코딩은 아래와 같습니다
function Feature (props){
let {id} = useParams()
if(parseInt(id) != NaN){
return(
<div className="container">
<div className="row">
<div className="col-md-6">
< img src={"https://codingapple1.github.io/shop/shoes"+(parseInt(id)+1)+".jpg"} width="100%" />
</div>
<div className="col-md-6">
<h4 className="pt-5">{props.shoes[id].title}</h4>
<p>{props.shoes[id].content}</p>
<p>{props.shoes[id].price}원</p>
<button className="btn btn-danger">주문하기</button>
</div>
</div>
</div>
)
} else {return(
<div className="col-md-6">
< img src="https://www.pngall.com/wp-content/uploads/13/Red-X-PNG-Picture.png" width="100%" />
<h4 className="pt-5">잘못된 주소입니다</h4>
</div>
)}
}
2. 응용문제쪽에서 정렬버튼을 만든 후 상세페이지 이동시 정렬된 데이터가 나오는 것이 아니라 원본데이터가 나옵니다
정렬 버튼 누르면 Grey Yordan부터 나오는 것까지는 확인했는데 거기서 /detail/0 하면 도로 White and Black이 나옵니다
이유과 개선 사항을 알고 싶습니다. 구체적인 코딩은 아래와 같습니다. detail.js는 위와 같습니다
function App() {
let [shoes,정렬] = useState(data)
(중략)
<Button variant="primary" onClick={()=>{
let newshoes = [...shoes]
newshoes.sort((a,b)=>{if(a.title>b.title){return(1)}else{return(-1)}})
정렬(shoes=newshoes)
}}>정렬</Button>