Ответ
useRef — это хук, создающий мутабельный объект с свойством current, которое можно изменять без перерисовки компонента. Используется для хранения DOM-элементов, таймеров и других значений.
forwardRef — это HOC, который позволяет передавать ref через компонент к дочернему элементу. Используется, когда нужно получить доступ к DOM-элементу внутри кастомного компонента.
Пример useRef:
const inputRef = useRef(null);
<input ref={inputRef} />Пример forwardRef:
const CustomInput = forwardRef((props, ref) => (
<input ref={ref} {...props} />
));Ключевое отличие: useRef создает ref, а forwardRef передает его через промежуточные компоненты.