Быстрое и простое решение: Не рекомендуется
Если вы всегда предполагаете, что dates
и cases
всегда будут одинаковой длины тогда вы можете сделать это:
{this.state.dates.map((el, index) => (
<tr>
<td>{this.state.dates[index]}</td>
<td>{this.state.cases[index]}</td>
</tr>
))}
Этот метод использует параметр index
функции map
. Затем вы можете получить доступ к массиву по указанному указанному c индексу.
Рекомендуемое решение:
Обычная практика состоит в том, чтобы данные группировались по каждой записи. .
Используя ваш пример, используйте такую структуру:
state = {
records: [
{ date: '2000', caseId: '1' },
{ date: '2001', caseId: '2' },
{ date: '2002', caseId: '3' }
],
}
Затем реализуйте это так:
{this.state.records.map(({ date, caseId }) => (
<tr>
<td>{date}</td>
<td>{caseId}</td>
</tr>
))}
Я использую caseId
вместо case
, потому что case
является зарезервированным словом в JavaScript для switch
операторов.