foundation

Props

Передавайте неизменяемые входы компонента, callbacks, children и конфигурацию, не скрывая поток данных.

Props — входные данные только для чтения от родителя к потомку. Поток данных в React однонаправленный: родитель передаёт значения и колбэки вниз, потомок уведомляет родителя через них, а не мутирует state родителя напрямую. Prop `children` — особый слот для композиции.

Деструктурируйте props на границе компонента для ясности, но не размазывайте неизвестные объекты по DOM-узлам. Значения по умолчанию и интерфейсы TypeScript документируют контракт. Если потомку нужно менять данные, поднимите state к ближайшему общему владельцу.

На интервью проверяют умение проектировать controlled-компоненты: value и `onChange` от родителя, потомок остаётся тонким представлением.

На интервью объясняйте концепцию на конкретном примере и называйте поведение, которое проверяют.

Типовые ошибки: скрывать поток данных, дробить компоненты чрезмерно и выполнять побочные эффекты в render.

Компромисс часто между ясностью и переиспользованием или между явными props и удобством.

Чеклист:

  • Считайте props неизменяемыми внутри потомка.
  • Сообщайте о событиях вверх через колбэки.
  • Для локальных потоков предпочитайте явные props неявному context.