Итак, я пытаюсь создать таблицу с material-ui, в которой строки w1 и w2 объединены по вертикали, но я не могу найти решение. Использование rowSpan, когда таблица жесткого кодирования вручную работает нормально, но когда я использую ее внутри функции карты, она создает 4 столбца с объединенными строками одного и того же элемента. Мне нужно сопоставить данные, потому что в этой таблице будет много строк, и жесткое кодирование всех строк нецелесообразно.
Любое предложение, чтобы решить эту проблему?
<TableBody>
{data.data.map((row, i) => (
<TableRow key = {row.i}>
<TableCell className = {classes.fontEditable} component = "th" scope = "row">
{row.x1}
</TableCell>
<TableCell className = {classes.fontEditable} align = "right">
{row.x2}
</TableCell>
<TableCell rowSpan = {4} className = {classes.fontEditable} align = "right">
{row.w1}
</TableCell>
<TableCell rowSpan = {4} className = {classes.fontEditable} align = "right">
{row.w2}
</TableCell>
<TableCell className = {classes.font} align = "right">
{row.t}
</TableCell>
</TableRow>
))}
</TableBody>
Ожидаемый результат

Фактический результат




![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


проблема: он создает ячейки w1 и w2 в каждой строке из-за функции карты
решение: вы можете выполнить условие if для печати w1 и w2 для первого только следующим образом:
<TableBody>
{data.data.map((row, i) => (
<TableRow key = {row.i}>
<TableCell className = {classes.fontEditable} component = "th" scope = "row">
{row.x1}
</TableCell>
<TableCell className = {classes.fontEditable} align = "right">
{row.x2}
</TableCell>
{i === 0?
<TableCell rowSpan = {4} className = {classes.fontEditable} align = "right">
{row.w1}
</TableCell>
<TableCell rowSpan = {4} className = {classes.fontEditable} align = "right">
{row.w2}
</TableCell>
:null}
<TableCell className = {classes.font} align = "right">
{row.t}
</TableCell>
</TableRow>
))}
Мне просто нужно было использовать это троичное выражение для каждой ячейки таблицы, потому что обе ячейки в одном выражении вызывают ошибку синтаксического анализа. Однако это решило мою проблему, спасибо :)