Я создаю компонент React, который принимает источник данных JSON и создает сортируемую таблицу.
Каждая из строк динамических данных имеет уникальный ключ, назначенный ему, но я все еще получаю сообщение об ошибке:
Каждый дочерний элемент в массиве должен иметь уникальный "ключ". Проверьте метод рендеринга TableComponent.
Мой метод рендеринга TableComponent
возвращает:
<table>
<thead key="thead">
<TableHeader columns={columnNames}/>
</thead>
<tbody key="tbody">
{ rows }
</tbody>
</table>
Компонент TableHeader
- это одна строка, а также назначенный ему уникальный ключ.
Каждый row
в rows
построен из компонента с уникальным ключом:
<TableRowItem key={item.id} data={item} columns={columnNames}/>
И TableRowItem
выглядит так:
var TableRowItem = React.createClass({
render: function() {
var td = function() {
return this.props.columns.map(function(c) {
return <td key={this.props.data[c]}>{this.props.data[c]}</td>;
}, this);
}.bind(this);
return (
<tr>{ td(this.props.item) }</tr>
)
}
});
Что вызывает уникальную ошибку подсказки ключа?