Alexey
знакомишься такой с тёлочкой в баре: смотри сколько у меня звёзд на гитхабе
Andrei
У меня в программе учебной жиквери и флеш🤪
благо у меня был препод из яндекса, хотя дальше жабаскрепта не ушли
arts
по-любому препод старый в универе какой-нибудь
Не, мужик лет 30. Пакистанец вроде
Nikolai
внезапно, все проверенные решения начинались с этапа проектирования, тестирования, внедрения, итп даже р*дакс
Ты это техлиду на старте проекта расскажи или на собеседовании ещё лучше, а потом посмотрим где это востребовано кроме твоих влажных фантазий
ipos
Представь огромный mDTP, и это все смешано с основной логикой компонента
может я не встречал еще таких mDTP, но зато вся логика перед глазами и сразу понятно что делает та или иная функция, не надо в контейнер залазить + все довольно декларативно получается, мне пока кажется это все стало проще с хуками
Aidyno
Ребята, как вы трекаете Экшены в React Context?
ipos
Что такое контейнер
"умный", stateful, в общем компонент, в который раньше выносились эти все mSTP, mDSP
Andrey
Ты это техлиду на старте проекта расскажи или на собеседовании ещё лучше, а потом посмотрим где это востребовано кроме твоих влажных фантазий
запросто лучше быть нормальным разрабом с влажными мечтами, чем типичным представителем серого стада, застрявшего в легаси технологиях)
wolfe
"умный", stateful, в общем компонент, в который раньше выносились эти все mSTP, mDSP
что-то мне подсказывает, что dispatch(actionCreator()) как-то не очень в коде выглядит
wolfe
но зато с типами все норм
ipos
Не встречаюсь с такими :))))
ты оборачивал каждый компонент в HOC, через connect ?
Китикет
ты оборачивал каждый компонент в HOC, через connect ?
У меня на проекте обычно есть компонент, допустим PurchaseInfo, и рядом ConnectedPurchaseInfo, который представляет из себя обернутый в коннект PurchaseInfo, и там вся эта логика редаксовская
ipos
что-то мне подсказывает, что dispatch(actionCreator()) как-то не очень в коде выглядит
пишеш фунцию doSomething = () => dispatch( action() ) и потом используешь себе, что тут такого?
wolfe
там ещё и аргументы надо передать иногда
ipos
Еще в useCallback, да?
это можно )
Китикет
это можно )
Тупо +200 строк в компонент
ipos
и так экшоны в каждом компоненте биндить? 😱
да можешь и в одном, а в другие передать
Andrey
и после етого вы говорите, что в редаксе бойлерплейт не страшный??
ipos
Китикет
Забавно об этом рассуждать, когда в эффекторе для экшна импортируешь ивент / эффект, а для состояния тупо пишешь useStore
wolfe
Тупо +200 строк в компонент
их ещё и в deps потом каждый раз нужно передавать
ipos
Тупо +200 строк в компонент
сколько работаю не бывало такого
Andrey
так пропсами
F видимо к хорошему быстро привываешь) и когда про такие вещи говорят, с выражением "ну и чо, нормас же, что такого то" - звучит как дикость)
Alexey
а у вас в секте эффектора есть тайное рукопожатие? =)
Alexey
прочел как тайное рукожопие
ну, это не взаимоисключающие понятия =)
Andrey
а у вас в секте эффектора есть тайное рукопожатие? =)
конечно, руки от бойлерплейта то теперь не устают
Alexey
хилые руки у вас какие-то =)
Andrey
хилые руки у вас какие-то =)
просто мы больше сил в бизнес логику вложить можем, а не в обертки вокруг редакса) так шо не надо тута
ipos
забавно, что появляется что-то новое и все начинают хейтить технологии, на которых сидели год назад
Mihail
альтернатив не было
Alexey
а кроме биндов к компонентам есть ещё плюсы у эффектора?
Andrey
забавно, что появляется что-то новое и все начинают хейтить технологии, на которых сидели год назад
пушто я помню, как это было с редаксом это как драться с чемпионом мира по мма, ОН ТЕБЯ НЕ ЩАДИТ
ipos
ну, я верю вам, но просто зачем так яростно и с пеной у рта это доказывать?
Andrey
вроде формат вопрос(нападка)/ответ
Frontend Priest
а кроме биндов к компонентам есть ещё плюсы у эффектора?
децентрализованность, предсказуемость, реактивность, дикий перфоманс как бонус
Mihail
ты понимаешь, что он реально лучше?
напиши простой каунтер эпп с редаксом и с эффектором и сравни
Frontend Priest
ну, я верю вам, но просто зачем так яростно и с пеной у рта это доказывать?
потому что в каждом комьюнити есть несколько *самых преданных фанатов*, это норма
Alexey
децентрализованность, предсказуемость, реактивность, дикий перфоманс как бонус
а чем децентрализованность - плюс? в смысле js-приложения предсказуемость - не очень понял. редакс он же тоже простой как гвоздь реактивность - почитаю, гляну чем перформанс достигается?
wolfe
тот же thunk чтобы понимать, как работает, нужно очень хорошо разбираться
Alexey
редакс же по сути полторы функции сменить стейт, уведомить подписчиков
Andrey
а чем децентрализованность - плюс? в смысле js-приложения предсказуемость - не очень понял. редакс он же тоже простой как гвоздь реактивность - почитаю, гляну чем перформанс достигается?
тем что можно лепить атомарные сторы, и это не будет больно как в редаксе редакс простой как гвоздь, только вот просто редакс сейчас никто не юзает (санки, саги, вот это вот все)
wolfe
за полтора часа освоил
вы говорите здесь, что он простой, но это не правда
wolfe
почему функция становится экшеном?
Andrey
это не говоря уже про асинхронщину в редаксе, типизацию, DX, про то, что тот же редакс с разными миддлтварями - уже считай 2+ разных стейт менеджера
va1
забавно, что появляется что-то новое и все начинают хейтить технологии, на которых сидели год назад
Да нету ничего нового в случае эффектора, ощущение, что его за пределами этого чата не существует. Ни одного обсуждения в сети не смог найти, ток статейки на популярных площадках с 1-2 комментами. Болгенос2.0 прям какойто
Frontend Priest
а чем децентрализованность - плюс? в смысле js-приложения предсказуемость - не очень понял. редакс он же тоже простой как гвоздь реактивность - почитаю, гляну чем перформанс достигается?
редакс прост сам по себе ( и то не факт https://github.com/reduxjs/redux/commit/9276ff0af6400633d6731b15fed6e70c3561887e ), но сложен со всем ворохом аддонов для него
Alexey
почему функция становится экшеном?
потому, что thunk - middleware, который выполняет функцию =)
Andrey
опять же, чем атомарный стор - плюс? не холивара ради, просто интересно чисто для разделения логики?
да гораздо удобнее данные организовывать, атомарными независимыми сторами
wolfe
потому, что thunk - middleware, который выполняет функцию =)
да, вот только если вы захотите это затипизировать, то столкнетесь с проблемами
Andrey
сюда же из коробки вычисляемые сторы, удобный апи для работы с ивентами/эффектами
wolfe
они, конечно, решаются, но в эффекторе об этом даже думать не надо
wolfe
например?
затипизируйте action в миддлваре
wolfe
вам придется для начала убрать все ваши redux-act, symbiote, описать всё это вручную, а потом получится так, что есть ещё некий ThunkAction помимо Action, который ещё желательно бы затипизировать в пропсах у компонента
wolfe
ну с хуками будет попроще, но всё равно не то. ну его на хер...
Alexey
export type HomeHeroThunk<R = any, A extends IHomeHeroAction<any, any> = any> = ( dispatch: ThunkDispatch<IState, undefined, A>, getState?: () => IState ) => Promise<R>;
Alexey
ну это один раз сделать нужно :)
Looch
any as any 🌚