Загрузка…
Загрузка…
Higher-Order Component (HOC) — это функция, которая принимает компонент и возвращает новый компонент с дополнительной логикой или пропсами. Паттерн композиции, популярный до широкого распространения хуков.
function withAuth(Wrapped) {
return function AuthGate(props) {
if (!props.user) return <LoginHint />;
return <Wrapped {...props} />;
};
}
const PrivateProfile = withAuth(Profile);withA(withB(withC(Comp)))), сложнее отлаживать;static/ref без forwardRef и копирования statics;useAuth), что проще читать.На собеседовании достаточно: определение, пример, отличие от обычного родителя-обёртки (HOC — фабрика компонентов) и что сегодня чаще предпочитают хуки, хотя HOC ещё встречается в старых кодовых базах и библиотеках.
Итог: HOC — функция Component → Component для переиспользования поведения; знать нужно, но писать новые лучше через хуки, если нет жёстких ограничений.
