Лучшие практики для ключей и ссылок
Используйте стабильные ключи, избегайте проблем с индексом в роли ключа и работайте со ссылками-колбэками
«Лучшие практики для ключей и ссылок» — бесплатный урок React Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения React Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс React Academy содержит 4 уроков всего.
Добро пожаловать
Почему ключи важны
Стабильные уникальные ключи
users.map(user => (
<UserCard key={user.id} user={user} />
))Почему индекс в качестве ключа создаёт проблемы
// Risky when list can reorder or filter
items.map((item, i) => <Row key={i} {...item} />)Когда индекс в качестве ключа допустим
Создание стабильных ID
const newItem = { id: crypto.randomUUID(), text: 'Buy milk' };Основы useRef
const inputRef = useRef(null);
<input ref={inputRef} />
// Access DOM node: inputRef.current.focus();Ссылки обратного вызова
function Input() {
return (
<input
ref={node => {
if (node) node.focus();
}}
/>
);
}forwardRef для ссылок компонентов
const FancyInput = React.forwardRef((props, ref) => (
<input ref={ref} className="fancy" {...props} />
));
// Parent
const inputRef = useRef(null);
<FancyInput ref={inputRef} />useImperativeHandle
const Child = forwardRef((_, ref) => {
const innerRef = useRef();
useImperativeHandle(ref, () => ({
focus: () => innerRef.current.focus(),
}));
return <input ref={innerRef} />;
});Быстрая проверка
Итоги
Далее
Часто задаваемые вопросы
Урок «Лучшие практики для ключей и ссылок» бесплатный?
Да — полный текст урока «Лучшие практики для ключей и ссылок» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс React Academy, подпишись на CoddyKit PRO. Курс React Academy содержит 4 уроков всего.
Чему я научусь в уроке «Лучшие практики для ключей и ссылок»?
Используйте стабильные ключи, избегайте проблем с индексом в роли ключа и работайте со ссылками-колбэками Ты практикуешь React Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать React Academy?
Предыдущий опыт не требуется. React Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Лучшие практики для ключей и ссылок»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке React Academy?
Да. Каждый урок React Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Что делает StrictMode
- Чистые компоненты и отказ от побочных эффектов при отрисовке
- Лучшие практики для ключей и ссылок
- Структура папок и соглашения об именовании