Size: a a a

React — русскоговорящее сообщество

2020 July 13

VO

Viktor Osipov in React — русскоговорящее сообщество
Александр Бакиматов
так что у тебя нет в них надобности? а DI в эру хуков вполне себе хуками реализуется
Правильно ли я понимаю, что ты предлагаешь совмещать ответственности работы с данными и управления UI в одном компоненте?
источник

ТФ

Татьяна Фомина... in React — русскоговорящее сообщество
эту презентацию я видела, но когда доходит до конкретной реализации, сложно разобраться, какая именно должна быть структура и что куда нужно отнести
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Татьяна Фомина
а тогда как?
В моем представлении - конечно зависит от того, что там происходит и хранится должно...
Я говорю об абстракции, которая скроет деталь реализации - использование лс. При этом эта делать может измениться, и не придется менять везде
Но на самом деле формулируя это только что подумал, что это вообще далеко не везде нужно
Так что имеют место быть и хуки те же, просто надо думать на сколько вероятно, что лс придется на что-то заменить, например
источник

АБ

Александр Бакиматов... in React — русскоговорящее сообщество
Viktor Osipov
Правильно ли я понимаю, что ты предлагаешь совмещать ответственности работы с данными и управления UI в одном компоненте?
если ты под отвественностью работы с данными понимаешь useSelector/useStore/useSomethingOtherStorage - то да, никаких проблем в этом нет. Как написания ненужного бойлерплейта. При условии построения нормальной архитектуры. а не также как раньше директория components и директория containers и погнали)
источник

ТФ

Татьяна Фомина... in React — русскоговорящее сообщество
я не очень понимаю, вроде говорят, что запросы к апи или локалСтораж из компонента делать напрямую это плохая практика, а зачем тогда куча хуков типа useFetch https://github.com/stevenpersia/captain-hook#usefetch---view-code ?
источник

АБ

Александр Бакиматов... in React — русскоговорящее сообщество
Татьяна Фомина
эту презентацию я видела, но когда доходит до конкретной реализации, сложно разобраться, какая именно должна быть структура и что куда нужно отнести
ну это уже да, продумывать нужно опираясь на требования проекта и его понимание. конкретно вот эта реализация Совы основана на чистой архитектуре и ddd (но про ddd я не помню чтобы Серега говорил, но мне кажется он оттуда почерпнул часть)
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Татьяна Фомина
я не очень понимаю, вроде говорят, что запросы к апи или локалСтораж из компонента делать напрямую это плохая практика, а зачем тогда куча хуков типа useFetch https://github.com/stevenpersia/captain-hook#usefetch---view-code ?
Ну, вот вы делаете какой-то прототип, показать заказчику на вчера надо было
источник

VK

Vladimir Klimov in React — русскоговорящее сообщество
Vladimir Klimov
Ну, вот вы делаете какой-то прототип, показать заказчику на вчера надо было
Нет времени делать архитектуру, разделяиь слои, и вот это все)
источник

ТФ

Татьяна Фомина... in React — русскоговорящее сообщество
Vladimir Klimov
Нет времени делать архитектуру, разделяиь слои, и вот это все)
ааа, вот оно чё
источник

АБ

Александр Бакиматов... in React — русскоговорящее сообщество
ну а еще многие до сих пор не понимают что делать запросы в компонентах плохо))
источник

W

Without Hands in React — русскоговорящее сообщество
Доброй ночи, есть ли возможность отображать несколько Popover'ов в одной презентации в material ui?
источник

VO

Viktor Osipov in React — русскоговорящее сообщество
Александр Бакиматов
если ты под отвественностью работы с данными понимаешь useSelector/useStore/useSomethingOtherStorage - то да, никаких проблем в этом нет. Как написания ненужного бойлерплейта. При условии построения нормальной архитектуры. а не также как раньше директория components и директория containers и погнали)
Структура файлов и папок !== архитектура приложения.
Ответственность работы с данными — запросы к серверу, обработка их результатов и хранение их ответов.
Ответственность управления UI — обработка событий и хранение состояния UI.
источник

ТФ

Татьяна Фомина... in React — русскоговорящее сообщество
Александр Бакиматов
ну это уже да, продумывать нужно опираясь на требования проекта и его понимание. конкретно вот эта реализация Совы основана на чистой архитектуре и ddd (но про ddd я не помню чтобы Серега говорил, но мне кажется он оттуда почерпнул часть)
не до конца понимаю, что считать фичей, если в приложении есть список покемонов и есть страница одного покемона (ну, например) - list и страница это отдельные фичи? или все, что относится к покемонам в этом приложении - это считается одной фичей?
источник

АБ

Александр Бакиматов... in React — русскоговорящее сообщество
Viktor Osipov
Структура файлов и папок !== архитектура приложения.
Ответственность работы с данными — запросы к серверу, обработка их результатов и хранение их ответов.
Ответственность управления UI — обработка событий и хранение состояния UI.
вот так спасибо за новость) но мы кажется обсуждали это в контексте контейнеров и компонентов, о каких транспортных слоях в них может идти речь?
источник

АБ

Александр Бакиматов... in React — русскоговорящее сообщество
ну и так то архитектура и про разделение кода тоже если на то пошло
источник

АБ

Александр Бакиматов... in React — русскоговорящее сообщество
Татьяна Фомина
не до конца понимаю, что считать фичей, если в приложении есть список покемонов и есть страница одного покемона (ну, например) - list и страница это отдельные фичи? или все, что относится к покемонам в этом приложении - это считается одной фичей?
шоб здесь щас не разводить тему Серегиного подхода  - https://t.me/atomicdesign вот чатик собственно тематический, там можно по этой концепции все спрашивать - все объяснят
источник

ТФ

Татьяна Фомина... in React — русскоговорящее сообщество
Александр Бакиматов
шоб здесь щас не разводить тему Серегиного подхода  - https://t.me/atomicdesign вот чатик собственно тематический, там можно по этой концепции все спрашивать - все объяснят
спасибо, пойду там спрошу
источник

И

Иван in React — русскоговорящее сообщество
Viktor Osipov
Структура файлов и папок !== архитектура приложения.
Ответственность работы с данными — запросы к серверу, обработка их результатов и хранение их ответов.
Ответственность управления UI — обработка событий и хранение состояния UI.
В контейнерах логика про данные, а в презентационных — логика про ui и события? Правильно понимаю?
источник

VO

Viktor Osipov in React — русскоговорящее сообщество
Александр Бакиматов
вот так спасибо за новость) но мы кажется обсуждали это в контексте контейнеров и компонентов, о каких транспортных слоях в них может идти речь?
https://codesandbox.io/s/presentational-and-container-components-q1vid

Попробую с примером.
У нас есть презентационный компонент App , отвечающий за UI и обработку событий на нём («лямбда-адаптер» в `onChange`).
Компонент App не знает об обработке данных, эту ответственность на себя берёт его родитель.

Можно реализовать два контейнера с говорящими названиями AppWithHooks и AppWithClass, который обрабатывают данные, получаемые от дочернего App.

Мы можем безболезненно для компонента App менять реализацию обработки данных: классы, хуки, редакс, локалсторедж - нас не волнует.
источник

VO

Viktor Osipov in React — русскоговорящее сообщество
Иван
В контейнерах логика про данные, а в презентационных — логика про ui и события? Правильно понимаю?
Совершенно верно.
источник