2016-08-02 15 views
0

Я понимаю, что React требует, чтобы эти ключи идентифицировали повторяющиеся элементы, но почему мы должны даже заботиться? Насколько я понял до сих пор, мы, как разработчики, похоже, не используем их ни для чего. Это только для Реакта. Не может ли он добавлять сами ключи, где бы и когда бы они ни нуждались в них?Почему не может «Активировать» ключи сами?

+1

[docs] (https://facebook.github.io/react/docs/multiple-components.html#dynamic-children) объясняют это. Вы также можете прочитать [сверка] (https://facebook.github.io/react/docs/reconciliation.html). Возможно, они не нужны в вашем usecase (в этом случае вы можете игнорировать сообщение об ошибке), но есть много случаев, где они есть. – ivarni

+0

Дорогой @jayarjo, я не понимаю, в чем именно вопрос. Вы четко знаете, почему React нужны ключи, вы спрашиваете, почему разработчики React не делают его неявной функцией? Разве вы не должны спрашивать их напрямую? – mjsarfatti

+0

Я думал, что они ответят здесь, если я помечаю его соответствующим образом :) – jayarjo

ответ

0

Это так, что вы можете делать что-то вроде элементов повторного заказа.

, где личность и состояние каждого ребенка должны быть сохранены по визуализации проходов, вы можете однозначно идентифицировать каждый ребенок путем присвоения ему key

Когда React примиряет ключевидные ребенок, это будет гарантировать, что любой ребенок с key будет переупорядочено (вместо сбитого) или уничтожено (вместо повторного использования).

https://facebook.github.io/react/docs/multiple-components.html#dynamic-children

Я не знаю, что бы способ автоматически сгенерировать ключ, который будет работать для этого, и в любом случае не существует такой автоматическая генерация в React.