Насколько вообще хорошо в компоненте описывать функцию, которая тоже возвращает JSX?

Локальная функция, возвращающая JSX, допустима как render-helper. Но объявление нового типа компонента внутри другого компонента может сбрасывать состояние потомка.

Короткий ответ

Что ответить на собеседовании

Локальная функция, возвращающая JSX, допустима как render-helper. Но объявление нового типа компонента внутри другого компонента может сбрасывать состояние потомка.

Подробный разбор

Ответ с пояснениями

Локальная функция, возвращающая JSX, допустима как render-helper. Но объявление нового типа компонента внутри другого компонента может сбрасывать состояние потомка.

Вызов renderContent() — обычный вызов функции; <Content /> заставляет React учитывать идентичность Content как типа элемента. Если компонент создаётся заново при каждом рендере, его обычно выносят на уровень модуля и передают props. Хуки нельзя прятать в условно вызываемый обычный helper.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее