сделать проект на дизайн системе, которая написана на React, использовал NextJS.
Но во время написания, внезапно понял, что вообще не выкупаю React. Объясните тупому зачем нужны функциональные компоненты?
Особенно напрягает, что хуки нельзя выносить во внешнюю функцию или ставить под условия, разве это удобно? В итоге мой компонент сильно раздулся и превратился в свалку кода.
Чтобы экземпляры классов каждый раз не создавать. Это дорого. Хуки можно выносить во внешнюю функцию. А вот по условию - да, нельзя, ибо на одну функцию все хуки должны запускаться всегда в одном порядке - это позволяет реакту корректно сохранять состояния хуков между множеством useState и useEffect запросах. Нужны хуки по условию - создавай компоненты, в одних из которых нужный тебе хук, а в других - нет и по условию рендерь компоненты
Да, но разве мы не теряем наследование? Мы разрабатываем крупные бизнес приложения, и переиспользование логики очень частый кейс у нас. Да и не очень понятно как функциональные компоненты работают. Если я вызываю функцию, разве все хуки не должны заново инициализироваться? Что почитать, чтобы разобраться?
Там очень все скудно описано, мне бы какой нить хороший Deep Dive. В документации описаны хуки и что они делают, а вот как это все устроено, не понятно.
Для того что бы понять что компоненты можно переимпользовать deep dive не нужен
https://habr.com/ru/companies/otus/articles/667706/ https://habr.com/ru/companies/otus/articles/668700/ https://habr.com/ru/companies/otus/articles/669962/ https://habr.com/ru/companies/otus/articles/696610/ https://habr.com/ru/companies/otus/articles/677208/ Удачи)
На заре реакта мы отказались от наследования в пользу композиции. И не жалеем
Ой да там какая то каша. Например, когда нужно использовать memo, когда нет, так и не понял. Когда компоненты перерисовываются? А если родитель перерисовываетя, дети тоже? Как работает SSR с хуками? Почему когда я добавил iframe (был в коде счётчик Метрики) NextJS нарисовал компонент дважды? И так далее... Слишком много вопросов, слишком мало ответов)
Ответы на все это есть
Я изучаю реакт уже третий год и сам до конца не знаю всех ответов, ты хочешь за пару дней?
NextJS - там такая охереть какая большая дока. И без базовых знаний react-а туда вообще нельзя лезть
А ты знаешь?
Ну как, я когда React вышел, его юзал, тогда было все просто и понятно. Есть класс и JSX, нужно поменять state - юзай setState. Нужно прокидывать state, юзай контекст. Потом придумали Redux. Ну а потом я ушел на Angular разработку, а там все переворотили) Я все сторонился всего этого, ну вот приходится вкатываться...
Ох, это только верх Айзенберга)
А как связаны сср и хуки?
Столкнулся к некоторыми проблемами при разработке SSR React приложения, скорее вопрос не к хукам, а в целом про работу SSR в React.
А шо не так с перерисовкой компонентов?)) Яж не отстану
Типо про серверный компоненты и клиентские?
Обсуждают сегодня