в HOC-компоненте? Простой пример: отправляю в HOC-компонент (div с текстом) и хочу вернуть то же самое, но со стилями. Но это не срабатывает. Однако, если в HOC рядом с возрвращаемым комнонетом положить какой-то jsx-элемент, написанный прямо внутри HOC, например еще один div - на нем стили срабатывают. А на присылаемом WrappedComponent - нет. Что-то я не догоняю)
Не делай хок плиз, молю умоляю, бляа пожалуйста, придумай другое решение в 2022 году
Потому что потом не оттебажишь
Ты бы лучше не умолял, а обосновал. У HOC нету альтернативы вообще-то.
Для 98% задач альтернатива есть
Понятно, как собственно и реакт можно заменить отсутствием реакта например, все понял
Ну хок ещё альтернативой можно заменить, только ты почему-то говоришь, что нет
Или я чего-то не понимаю? Что это значит?
https://codepen.io/capfsb/pen/ZEXooeL Вот как тут избавиться от HOC?
Ты и так их создал 🤷♂️
Только вдобавок нарушил читабельность и добавил потенциальную коллизию пропов
Главное отличие HOC от кастомного хука в том что оборачиваемый компонент ничего не знает о HOC. HOC это пораждающий паттерн если угодно. Объявление явно и создание через hoc разные вещи. Помимо этого кастомные хуки тебе не дадут возможностей декарировать оборачиваемый компонент например вот так https://codepen.io/capfsb/pen/ZEXooeL
Да, это минусы hoc. Я сам считаю что HOC нужно использовать примерно никогда. Всегда лучше сделать кастомный хук и объявить пару новых компонентов(хотя обычно достаточно хука), чем делать HOC. Но hoc != кастомный хук, потому что ты сам верно сказал, что разбиение кода на функции(хуки) это не паттерн декоратор, вот и все. Возможно и есть задачи которые через HOC решаются лаконичнее, но в голову сразу не лезет нормальный пример, а примеров использования кастомных хуков для разделения кода жопой жуй, просто потому что разбиение через хуки более интуитивный способ писать код. Вот в последнем случае я тебе привел пример когда на хук уже заменить сложнее и придется логику с зеленой обводкой повторять в компонентах, но даже в этом случае я считаю что лучше отказаться от HOC. Просто припекает когда люди пишут про догмы и серебрянные пули в духе "в 2022 молю не используй hoc это не модно/не круто/мне не нравится/так не заведено(выбрать нужное)", не объясняя почему и чем например HOC хуже. Аргументируя это тем что так заведено, вот почему. А то что HOC и кастомный хук не всегда могут быть легко заменены это почему-то таких советчиков не волнует.
А в чем проблема хоков?)
Тяжко потом работаться че откуда появляется
Кажется тут намного проще и расширяемое решение будет компонент с children пропом
Обсуждают сегодня