하위 구성 요소에 데이터를 전달하는 데 문제가 있어 도움이 필요합니다.
4341 단어 reactjsxjavascriptwebdev
서비스(데이터 포함),
크기imgcontentfooterCard4,
서비스모달
데이터는 다음과 같습니다
export const serviceItemInformation = [
{
title: "...",
id:"...",
paragraph: ["..."],
image:{src: "...", alt:"..."},
modal: {
title: "...",
id: "...",
icon:"...",
image:{src: "...", alt:"..."},
list:[...],
paragraph: ["..."],
}
},
{...}
]
서비스는 매핑된 데이터를 SizeimgcontentfooterCard4 및 ServicesModal 구성 요소로 보냅니다.
<Container sx={containerWrapper} maxWidth="xl">
<Grid container spacing={2}>
{
serviceItemInformation.map(el => (
<>
<Grid sx={gridStyle} key={el.id} item lg={4} sm={12} >
<SizeimgcontentfooterCard4
title={el.title}
image={el.image.src}
alt={el.image.alt}
paragraph={el.paragraph}
id={el.id}
modalData={el.modal}
handleModal={handleModal}
modal={modal}
/>
<ServicesModal open={modal} setOpen={setModal} modal={el.modal}/>
</Grid>
</>
))
}
</Grid>
</Container>
SizeimgcontentfooterCard4는 모달 구성 요소 ServicesModal을 여는 버튼으로 콘텐츠를 표시하는 재사용 가능한 카드입니다.
SizeimgcontentfooterCard4에서 얻은 항목이 내가 기대했던 것과 정확히 일치합니다. 그러나 ServicesModal 구성 요소에서는 serviceItemInformation의 마지막 개체 값만 가져옵니다.
ServiceModal 구성 요소는
`
const ServicesModal = ({열기, setOpen, 모달,}) => {
const StyledModalImageArea = styled(Grid)(({theme}) => ({
width: "100%",
height: "100%",
backgroundColor: "red",
position: "relative",
padding: 0,
backgroundImage: `linear-gradient(to right, rgba(0, 0, 0, 0.555), rgba(0, 0, 0, 0.484)), url(${modal.image.src})`,
backgroundPosition: "center",
backgroundAttachment: "local",
backgroundSize: "cover",
backgroundRepeat: "no-repeat",
transition: "0.5s",
color: "#fff",
borderTopLeftRadius: 10,
borderBottomLeftRadius: 10
}))
return (
<StyledBackDrop
open={open}
onClick={() => setOpen(false)}
sx={{ color : "rgba(0, 0, 0, 0.56) !important", zIndex: (theme) => theme.zIndex.drawer + 1 }}
transitionDuration= {1000}
>
<StyledModal
hideBackdrop
open={open}
onClose={() => setOpen(false)}
aria-labelledby="modal-modal-title"
aria-describedby="modal-modal-description"
>
<StyledModalItems container sx={detailsContainer}>
<StyledModalImageArea item lg={5} sm={12}>
<BoxOverlay>
{modal.icon}
</BoxOverlay>
</StyledModalImageArea>
<Grid item lg={7} sm={12}>
<Typography id="modal-modal-title" variant="h4" gutterBottom component="h2">
{ modal.title }
</Typography>
</Grid>
</StyledModalItems>
</StyledModal>
</StyledBackDrop>
)
}
`
무엇이 문제일까요?
링크stackOverflow
Reference
이 문제에 관하여(하위 구성 요소에 데이터를 전달하는 데 문제가 있어 도움이 필요합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/joseph_muvevi/i-need-help-i-having-problem-passing-data-to-a-child-component-4o5a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)