Дима
Лучше не добивайте
я просто больше не буду здесь ничего рекомендовать, зачем мешать людям влачить
Frontend Priest
Andrey
редакс головного мозга у людей 😕
Bohdan
Я буду. Юзайте effector, пацаны
Andrey
в соседнем чате тип назвавший эффектор бесполезным, и топящий за рхжс в итоге так и не привел кейс, в котором эффектор не затащил бы
Andrey
🤷🏻‍♂️
Anatoliy
только жаль бан словил
🅅aleriy
главный вопрос что мне дает использование экшенов если можно обоитись без них?
главный ответ - если при использовании редакса ты не будешь использовать экшины, то тебя никто никогда не возьмет на работу
Vlad
Ребят, столкнулся с такой проблемой, когда использую Redux hooks: Есть два идентичных функциональных компонента, в каждом из них рендерится строка, которая лежит в redux store. В первом компоненте я получаю поле стора с помощью HOC connect, а во втором присваиваю в переменную функционального компонента useSelector(state => state.field). Проблема: при изменении redux store второй компонент показывает не всегда актуальные данные, как будто-бы что-то кешируется. Как решить эту проблему? Спасибо
Andrey
попугай вроде по делу написал все прелести эффектора
ну попугай там затроллил кросиво здешнего умника
Nick
народ, вы жесть какие токсичные
Bogdan
главный ответ - если при использовании редакса ты не будешь использовать экшины, то тебя никто никогда не возьмет на работу
Этот ответ как-то далёк от технической составляющей удобства и т д мне нужен более развёрнутый ответ почему так писать неправильно
Bogdan
Ведь так быстрее
Vlad
не используй redux, используй effector
спасибо, но где здесь ответ на мой вопрос? :)
Andrey
где
ну в жс_ру пару экранов наверх листани
Bogdan
твой код ансапортед щит
Какие реальные проблемы мы имеем при таком подходе почему код становится не поддерживаемым
🅅aleriy
Ведь так быстрее
так быстрее писать? а читать?
Daniil
Ну так никитка это ангулярщик
Bogdan
Ну намного быстрее читать сделали запрос записали данные через редьюсер
Daniil
естесна
Bogdan
Ненадо лазить по файлам
wolfe
Ненадо лазить по файлам
и 3 ветки диспатчить вручную каждый раз. отлично
Konstantin
Ненадо лазить по файлам
Зачем? И правда. Где мои фетчи в компонентДидМаунт??? Щас подебажу промис чейнинг в 5 шагов
🦜
Ненадо лазить по файлам
это ты просто не умеешь структуру проекта поднимать
Den
Подскажите либу для прогрессбара, отслеживающего скролл при прочтении страницы Типа как здесь - https://sobakapav.ru/
Bogdan
Щас обнова накатится я скину пример
Konstantin
Ну так никитка это ангулярщик
Там с осознанием нужды СТМ проблемы серьёзные. Помню как месяц был один и тот же спор, и ангулярщик пытался залить, что локалСторейдж и прокидывание пропсов через роутер это норм и этого хватает с головой
Daniil
ы
Den
зачем либа? это пару строк
Типа, хок делать самописный для переиспользования на разных страницах?
Den
Думаю, там не пару строк..
Vladimir
Подскажите либу для прогрессбара, отслеживающего скролл при прочтении страницы Типа как здесь - https://sobakapav.ru/
на том сайте код этой штуки такой: var t602_windowScrollTop = $(window).scrollTop(), t602_docHeight = $(document).height(), t602_winHeight = $(window).height(); t602_scrollPercent = (t602_windowScrollTop / (t602_docHeight-t602_winHeight)) * 100; $(".t602__indicator").css('width', t602_scrollPercent + '%');
🦜
Думаю, там не пару строк..
берешь высоту... а уже скинули
Den
Ок, спасибо.
🅅aleriy
Ну намного быстрее читать сделали запрос записали данные через редьюсер
отлично, пока ты так делаешь, ты создаешь конкурентное преимущество для других программистов при приеме на работу, которые понимаю почему так делать плохо
Bogdan
отлично, пока ты так делаешь, ты создаешь конкурентное преимущество для других программистов при приеме на работу, которые понимаю почему так делать плохо
что в все про работу да про работу вопрос на понимание какие проблемы когда мы просто из компонента редьюсер вызываем с данными мы получаем
🅅aleriy
это же так замечательно вносить изменения в такой код когда у тебя в 100500 местах написано dispatch({ type: '....', .... })
Bogdan
дак по другому то у тебя будет просто dispatch(SOME_ACTION)
Bogdan
а как?
🅅aleriy
у меня будет реестр экшинов отдельно
🅅aleriy
с нормальными логичными для их назначения названиями
Bogdan
это понятно
Bogdan
семантика такая
🅅aleriy
и если что-то поменяется потом, я эти изменения в одном месте сделаю
Bogdan
тот же диспатч из компонента или нет?
Bogdan
так вот уже ближе к сути
Daniil
нет
🅅aleriy
так вот уже ближе к сути
суть в основополагающих принципах программирования скорее, а не в реакте или редаксе конкретно
🅅aleriy
есть всякие DRY, SOLID и прочие понятия
Bogdan
то есть это нужно только для того что если вдруг данные которые ты передаешь в редьюсер поменяются их легко можно было в одном месте поменять и не лазить везде где эти вызовы идут и менять
Bogdan
на сабеседованиях будете рассказывать про dry и солид
Anonymous
Привет! Кто то работал с react-treebeard ??
🅅aleriy
то есть это нужно только для того что если вдруг данные которые ты передаешь в редьюсер поменяются их легко можно было в одном месте поменять и не лазить везде где эти вызовы идут и менять
в данном случае достаточно хотя бы того что тебе не придется дублировать везде тип экшина для диспатча, что сократит размер бандла
Bogdan
а сейчас нужно понимание и суть вопроса
🅅aleriy
я уже не говорю о том, что минимизирует риск ошибиться в названии типа в диспатче
Bogdan
просто при использовании экшонов у тебя проблема с асинхронностью появляется которую решать доп зависимостью придется(thunk/saga)
🦜
это вся разница?
у тебя в бандле всегда будет дублироваться строка, объект, потому что на никуда не вынесете и нет ссылки на нее
🅅aleriy
ты можешь тупо опечататься dispatch({ type: 'ACTION', { ... } }) вместо любой латинской буквы русскую напечатать элементарно
🅅aleriy
и потерять несколько часов в поисках ошибки
🦜
лан. чел не хочется учиться. чо время тратить
Bogdan
всмысле нехочу
🅅aleriy
а учитывая, что на проекте ты обычно не один, а например 3-5 фронтов работает кто-то опечатался и привет....
Bogdan
я хочу понять все за и против)
🅅aleriy
я хочу понять все за и против)
тут как в спорте - начинаешь - не спорь, а просто делай как надо, а понимание придет со временем
Bogdan
я же не кнгфу изучаю
Bogdan
в ато в конце вы заставите меня полы мыть в ожидании понимания
Bogdan
как это в фильмах происходит)