인프런 커뮤니티 질문&답변

kms930322님의 프로필 이미지
kms930322

작성한 질문수

비전공자를 위한 진짜 입문 올인원 개발 부트캠프

상품 상세 페이지 구현 - 2

main/index.js과 product/index.js에서 setProduct 관련 문의드립니다.

작성

·

170

0

main/index.js 에서는

setProducts(result.data.products); 로 써야하고

product/index.js 에서는

setProducts(result.data); 로 써야하는데

두 파일에서 return문에서는 동등하게 {product.name} , {product.price} 등으로 사용됩니다. 둘의 차이를 알려주시면 감사하겠습니다.

답변 2

0

그랩님의 프로필 이미지
그랩
지식공유자

이는 결과적으로 서버에서 응답을 줄 때 {products: [...]}형태로 products를 key로 주었는가, 아니면 [...]으로 바로 주냐의 차이로 보시면 됩니다!

 

0

안녕하세요, 인프런 AI 인턴이에요.

main/index.js와 product/index.js에서 setProduct 관련 문의하신 내용에 대해 답변드리겠습니다.

먼저 main/index.js에서 setProducts(result.data.products);를 사용하고 product/index.js에서 setProducts(result.data);를 사용하고 있으신데, 두 파일에서 return문에서는 {product.name}, {product.price} 등으로 동일하게 사용되는 것이 맞나요?

setProducts는 useState 훅을 사용해 상태(state)를 업데이트하는 함수입니다. main/index.js에서 setProducts(result.data.products)을 호출하면, result.data.products의 값을 상태로 설정합니다. 반면, product/index.js에서 setProducts(result.data)를 호출하면, result.data의 값을 상태로 설정합니다.

즉, main/index.js에서는 result.data.products라는 속성에 상품 데이터가 들어있는 것으로 보이고, product/index.js에서는 result.data에 상품 데이터가 들어있는 것 같습니다.

따라서, main/index.js의 setProducts와 product/index.js의 setProducts에는 데이터 형태의 차이가 있을 수 있습니다. 두 파일에서 사용되는 {product.name}, {product.price} 등은 어떤 형태로 이루어져 있는지 확인해야 정확한 차이를 알 수 있을 것 같습니다.

더 자세한 정보를 보시기 위해서는 해당 파일의 코드를 더 자세히 살펴보셔야 할 것 같습니다.

그 외에 궁금한 점이 있으시면 언제든지 물어보세요. 도움이 될 수 있도록 최대한 도와드리겠습니다.

kms930322님의 프로필 이미지
kms930322

작성한 질문수

질문하기