gpt4 book ai didi

reactjs - 如何将 react 组件作为变量传递给子组件?

转载 作者:行者123 更新时间:2023-12-04 02:43:51 36 4
gpt4 key购买 nike

当我在一个变量中定义了一个组件,并且我试图将它作为子组件传递给一个组件时,Objects are not valid as a React child显示错误。

这样做的正确方法是什么?

function AnotherComponent(){
return "Another";
}

function ChildComponent(props) {
const { children, value, index, ...other } = props;

console.log(children);
return (
<Typography
component="div"
role="tabpanel"
hidden={value !== index}
id={`full-width-tabpanel-${index}`}
aria-labelledby={`full-width-tab-${index}`}
{...other}
>
<Box p={3}>{children}</Box>
</Typography>
);
}

function MainComponent(){
const tabItems = [
{ "component": AnotherComponent}
];

const [value, setValue] = React.useState(0);

return (
<>
{tabItems.map((tabItem,index) => (
<ChildComponent value={value} index={tabItem.index}>
{tabItem.component}
</ChildComponent>
))}
</>
)
}

最佳答案

tabItem.component只是一个对象。这应该工作:

{tabItems.map((tabItem, index) => {
const TheComponent = tabItem.component;
return (
<TabPanel value={value} index={tabItem.index}>
<TheComponent />
</TabPanel>
);
})}

关于reactjs - 如何将 react 组件作为变量传递给子组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58047950/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com