gpt4 book ai didi

javascript - Material UI 组件不会动态渲染数据集

转载 作者:行者123 更新时间:2023-12-02 20:56:21 27 4
gpt4 key购买 nike

我正在尝试创建一个表组件,该组件可以根据数据集动态呈现项目列表。表组件由 <TableHead/> 组成和<TableBody/>我用.map()动态创建将值分配给 <TableCell/>组件。

const data = [{
new_cases: 100,
total_cases: 200,
province: 'Ontario'
},
{
new_cases: 300,
total_cases: 400,
province: 'Edmonton'
}]

const CustomTable = () => {
const tableHead = Object.getOwnPropertyNames(data[0]);

return (
<TableContainer>
<TableHead>
<TableRow>
{tableHead.map(name => <TableCell>{name}</TableCell>)}
</TableRow>
</TableHead>
<TableBody>
{data.forEach(row => (
<TableRow>
{Object.values(row).map(column => (
<TableCell>{column}</TableCell>
))}
</TableRow>)
)}
</TableBody>
<TableContainer>
);
};

export default CustomTable;

但是,问题是 <TableCell/>包裹在 <TableBody/>不显示column值(value)。奇怪的是,当我console.log(column)时它正确返回属性值。我错过了什么吗?

<TableRow>
{Object.values(row).map(column => <TableCell>{column}</TableCell>)}
</TableRow>)
//TableCell is not rendered.
<TableRow>
{Object.values(row).map(column => console.log(column))}
</TableRow>
//returns 100, 200, 'Ontario', 300, 400,'Edmonton'

最佳答案

您可能需要将 forEach 更改为 map

{data.forEach(row => (

{data.map(row => (

关于javascript - Material UI <TableCell> 组件不会动态渲染数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61473635/

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