Хорошо, после нескольких часов размышлений о ваших комментариях и ответах и некоторых экспериментах я нашел решение.
Для более подробного объяснения решения я опубликую весь свой компонент:
export class ItemsList extends Component {
static propTypes = {
listItems: PropTypes.func.isRequired
};
componentDidMount() {
const { listItems } = this.props;
listItems();
}
renderGroups() {
const { itemsList, user } = this.props;
const items = itemsList.map((item, index) => ({
...item,
index
}));
return (
<Fragment>
{itemsList.length > 0 ? (
<Fragment>
<PageHeader>
Groups
<span>({itemsList.length})</span>
</PageHeader>
<div className="mb-2">
<TableWithSearch
keyField="index"
data={items}
columns={getItemsTableColumns()}
search
>
</TableWithSearch>
</div>
</Fragment>
) : (
<div>no items</div>
)}
</Fragment>
);
}
Моя ошибка состояла в том, что я передавал его ListGroups
в качестве атрибута данных, что, в свою очередь, делало невозможным для компонента чтение массива групп и получение его индекса Ids van der Zee
было правильным вего комментарий.
По какой-то причине синтаксис JSX
для атрибута ключа не сработал, как вы, ребята, предположили.Я не исследовал это, но я сделаю и прокомментирую ниже.
Приведенный выше пример работает как шарм.Если вы знаете, почему не работает синтаксис JSX, пожалуйста, не стесняйтесь комментировать.Спасибо за вашу помощь, ребята ..