Bogdan
Bogdan
Bogdan
короче весь смысл в том, что есть перерендер, текущая статья ловится, а стейт формика не обновляется
Bogdan
хотя в ридакс форм если кидать начальный стейт, то он подхватит новый
Vlad
Есть норм аналоги?
Ссылка: https://www.npmjs.com/package/react-responsive-carousel
Andrei
кто знает, что CRA юзает для импорта SVG как ReactComponent?
Cenator 🐈
Andrei
спасиб) @itsjohncena
Danil
А где нужно делать ajax запросы в приложении на react, когда прилетает евент от юзера
Danil
Внутри редусеров
Danil
Или в компоненте
Anonymous
Внутри action creator
Anonymous
rovnyart
а еще лучше читаешь про принципы SOLID и не пишешь fetch внутри компонента никогда) а изолируешь слой получения данных в какой-нибудь дата провайдер, и в компоненте в зависимости от того, какой подход используется в приложении, получаешь нужные методы через пропсы/хуки
MVD
Так делать не надо
можно в редюсере еще.
case ACTION_LOAD:
var data = await fetch()
return { data}
Anonymous
Danil
Т.е. в action creator норм будет с аргументами делать методы и вызывать их, чей результат передавать в dispatch я правильно понял
Danil
Danil
На гитхабе ведь должны примеры быть
rovnyart
Mvc на клиенте писать?
Ну типы то свои ебучие и интерфейсы на клиенте пишете зачем-то, потому что надо везде впихнуть тайпскрипт) а тут просто здравый принцип изоляции интерфейса
Danil
Danil
Просто на серваке интерфейсы и разные слои на клиенте слои, эх
Bogdan
rovnyart
и вот конкретно с этим я согласен моментом)
Danil
Очень затратно получается в одного столько оберток писать
Danil
Для небольших проектов
rovnyart
ну, вообще никто не запрещает так делать, я говорю именно про задротские штуки, у меня у самого в проекте этот слой реализован только для получения данных, для пост-запросов и гет-запросов без возвращаемых данных мы так же и херачим в компонентах запросы на сервер)
rovnyart
но лично я бы хотел, чтобы мы так не делеали в будущем, потому что согласен с принципом)
rovnyart
вот и тут рекомендую по мере сил)))
Danil
А вообще этот слой данных с парента тянуть
Danil
Или вызывать в одном контейнере и все передавать через props вниз
rovnyart
ну у нас как сделано - есть HOC дата провайдер, которым можно обернуть компонент, и тогда в нем появляется пропс data, внутри которого сто питсот разных loadUsers, loadSomeOtherShits, плюс сами данные - data.users, data.someOtherShits, плюс теперь еще есть хук useData, который принимает название сущности и возвращает функцию загрузки, флаг loading, ошибку и сами данные, то есть const [loading, users, loadUsers] = useData('users')
rovnyart
в принципе это перекрывает все кейсы получения данных с сервера и даже более менее современненько
rovnyart
не перекрывает только всякие пост-запросы на проверку типа существующего уже имейла в валидации при регистрации и тд
rovnyart
вот в этих местах у нас все еще используется прямой запрос axios.post('api/users/checkEmail')
Danil
Ну а вообще в action creator'ах писать это нормальная практика
rovnyart
а сорян я не увидел, что ты используешь редакс, я конечно говорю о дивном новом пост-редакс мире, где его нет))
rovnyart
хотя при использовании редакса и прочих имхо мусорных в 2к19 стейт-менеджеров, слой получения данных все равно выделяется, просто находится в экшенах, и да, это нормальная практика, если считать нормальной практику испльзования редаксов=)
Andrew
Во тьме ночной при свете дня редакс выпиливаю я
rovnyart
Anonymous
Прочие имхо мусорные стейт-менеджеры здесь?
rovnyart
олды тут?
Anonymous
Как же прекрасен ваш мир, где все вокруг дураки
rovnyart
ну я очень осторожно теперь говорю, уже научен знаешь ли
rovnyart
"имхо" говорю и "если считать нормальной практику"
Andrew
А если у тебя прям огромная приложуха и хочется саги сделать?
Danil
То есть вызывается dispatch в компоненте и если в хранилище redux пусто, то в reducer вызывается процедура, содержащая fetch из actiona?
🅅aleriy
Vova
Парни, что думаете о книге "грокаем алгоритмы"?
Уже несколько раз о ней слышал
Mihail
Тут всё ещё юзают редакс
Mihail
?
🅅aleriy
а когда тебе надо описать хитросплетенный процесс из последовательностей экшинов, где надо дождаться выполнения одних, чтобы запустить другие
🅅aleriy
Andrew
Киньте в меня статьей что даёт по факту выпиливание редакса
Vova
🅅aleriy
Стоит почитать?
ну у меня не было такой потребности пока, а так книг достойных много
Mihail
Dmitry
rovnyart
никогда не разжигал редаксосрачи и вот опять
rovnyart
Dmitry
хмм, а удобно вроде бы. реактивненько, я бы сказал.
Mihail
Контекст есть для глобальных вещей
Andrew
А если цепочку редьюсеров надо выстроить ? Прям в редьюсере диспетчится следующий ?
Andrew
Или выносится в какую то логику
rovnyart
А если цепочку редьюсеров надо выстроить ? Прям в редьюсере диспетчится следующий ?
лично я не могу представить себе такую задачу, которую нельзя было бы решить контекстом или хуками, возможно, такие задачи и существуют, первым делом, я бы проанализировал их на предмет вообще их актуальности, и если бы был убежден, что бер глобального стора и саг и редьюсеров действительно не обойтись, то пользовался бы редаксом и горя бы не знал) просто у меня вот есть 2 проекта, один с редаксом, один с божией помощью уже без, я смотрю на первый и меня берет тоска и слезы проступают на глазах от вида того количества кода, которое просто можно удалить. но опять же лично я не спорю, что возможны ситуации, когда без этого кода не обойтись, поэтому срачи на эту тему считаю затеей не особо обладающей смыслом
Anonymous
лично я не могу представить себе такую задачу, которую нельзя было бы решить контекстом или хуками, возможно, такие задачи и существуют, первым делом, я бы проанализировал их на предмет вообще их актуальности, и если бы был убежден, что бер глобального стора и саг и редьюсеров действительно не обойтись, то пользовался бы редаксом и горя бы не знал) просто у меня вот есть 2 проекта, один с редаксом, один с божией помощью уже без, я смотрю на первый и меня берет тоска и слезы проступают на глазах от вида того количества кода, которое просто можно удалить. но опять же лично я не спорю, что возможны ситуации, когда без этого кода не обойтись, поэтому срачи на эту тему считаю затеей не особо обладающей смыслом
Каждая технология под каждую реализацию
Anonymous
Нет технологии которая лучшая везде
rovnyart
но согласись, что существует проблема - когда ребята херачат этот стор и эти танки и саги в приложения, в которых не то что глобальный стор, там и контекст то не нужен, там максимум нужно тащить данные с сервера, а они для каждого компонента пишут редьюсер, экшены, комбинируют там чет с умным видом и оборачивают танками
rovnyart
потому что в 2016 году сказали React+Redux
Anonymous
Дед с батей опять по пьяне сцепились...чертовы стейт-менеджеры...
Vova
Anonymous
Пишу на flux и мне норм