Я создаю приложение React для Rails и столкнулся с проблемой назначения ключей динамическим дочерним элементам.Проблема с назначением ключей динамическим детям в приложении React-Rails
Ниже урезанная копия моего кода:
class Records extends React.Component {
render() {
var records =
this.props.data.map(function(record) {
return <div>
<Record key={record.id} data={record} />
</div>;
});
return (
<div>
{records}
</div>
);
}
}
class Record extends React.Component {
render() {
return (
<div>
<h1>Title: {this.props.data.title}</h1>
</div>
);
}
}
код работает правильно для предупреждения ниже, что, за исключением появления на консоли:
Warning: Each child in an array or iterator should have a unique "key" prop.
Check the render method of `Records`.
Я последовал за ссылку содержащийся в предупреждении к руководству по реагированию (http://facebook.github.io/react/docs/multiple-components.html#dynamic-children).
Хотя я чувствую, что выполнил их рекомендацию, что ключ всегда должен быть поставлен непосредственно компонентам в массиве, а не в содержимое дочернего элемента HTML каждого компонента в массиве, я все еще получаю это предупреждение в консоли.
Есть ли у кого-нибудь идеи, почему? Я полностью понимаю любую помощь, которую вы могли бы предоставить!
Спасибо! Вы абсолютно правы. –
Не могли бы вы согласиться с моим ответом тогда, пожалуйста :)? –