【发布时间】:2022-01-08 04:44:03
【问题描述】:
我需要合并rows 和rows2。如果其中任何一个都没有值,则它们的值为“无”。我如何将它们结合起来?现在的问题是它创建了多个空行。
代码沙盒CLICK HERE
<TableBody>
{[...(rows || []), ...(rows2 || [])].map((row) => (
<TableRow
key={row.name}
sx={{ "&:last-child td, &:last-child th": { border: 0 } }}
>
<TableCell component="th" scope="row">
{row.name}
</TableCell>
<TableCell align="right">{row.calories}</TableCell>
<TableCell align="right">{row.fat}</TableCell>
<TableCell align="right">{row.carbs}</TableCell>
<TableCell align="right">{row.protein}</TableCell>
</TableRow>
))}
</TableBody>
【问题讨论】:
-
那么,
const a = "none"; console.log(...a)打印什么? -
@windowsill 同
console.log("n", "o", "n", "e") -
嘿约瑟夫,
rows2会一直是字符串吗?您将字符串作为字符数组传播。你能澄清你想要“组合”的东西吗?据我所知,您正在迭代一个,然后迭代另一个。这就是您想要做的,还是您想要“合并”任何行数据?你能提供一个预期输出的例子吗? -
@DrewReese。否
rows和rows2并不总是字符串。如果它们有值,它们将返回一个数组,如果它们没有值,它们将返回一个字符串“none”。我想结合rows和rows2将它们迭代到表中。rows和rows2具有相同的数据结构。 -
@DrewReese。当
rows有值而rows返回“none”时,则只在表中迭代rows,反之亦然。如果两者的值都是“none”,则不要在表中迭代它们。
标签: reactjs ecmascript-6 react-hooks material-ui