Comments 5
Спасибо за подробные статьи, особенно за наличие всех картинок.
Есть вопрос по передаче результатов от вложенных графов.
Не кажется ли, что в целом передача/получение результатов через бэкстек/навигацию является костылём? Не органичнее ли для этого использовать какие-то общие "бизнес" сущности/компоненты? Например, AuthFlow в результате будет менять наличие юзера в неком UserRepository, информацию из которого и будут получать экраны из других графов навигации.
Привет!
Я согласен с тем, что для реального проекта передавать результаты зачастую проще через какие-то общие шины данных. А ещё это позволит описать бизнес-логику не во View-части =)
В статье мне хотелось показать то, как нам предлагают работать с Navigation Component и его сущностями. Я бы точно не рекомендовал делать так, как показано в статье, потому что это больно и костыльно.
Я согласен с тем, что для реального проекта передавать результаты зачастую проще через какие-то общие шины данных. А ещё это позволит описать бизнес-логику не во View-части =)
В статье мне хотелось показать то, как нам предлагают работать с Navigation Component и его сущностями. Я бы точно не рекомендовал делать так, как показано в статье, потому что это больно и костыльно.
Раз вы ужж затащили mvi в hh, то почему не решились навигировать ваши экраны через фичу и cicerone(чисто что бы фрагмент переключить)?
Разве управлять самим состоянием экрана не удобней, чем доверять его Navigation Component-у? ) Там и миграция на композ будет потом легкой .)
Разве управлять самим состоянием экрана не удобней, чем доверять его Navigation Component-у? ) Там и миграция на композ будет потом легкой .)
Привет!
По поводу MVI и навигации — мы в hh так и делаем. У нас в основном проекте нет никакого Navigation Component, и навигация построена на Cicerone. То, что описано в статье — это большой тестовый пример, который был сделан в рамках ресёрча.
Не очень понял про состояние экрана, Navigation Component же не связан с ним (разве что в очень широком смысле). Navigation Component осуществляет навигацию, переключение между экранами, у которых могут быть свои состояния.
По поводу MVI и навигации — мы в hh так и делаем. У нас в основном проекте нет никакого Navigation Component, и навигация построена на Cicerone. То, что описано в статье — это большой тестовый пример, который был сделан в рамках ресёрча.
Не очень понял про состояние экрана, Navigation Component же не связан с ним (разве что в очень широком смысле). Navigation Component осуществляет навигацию, переключение между экранами, у которых могут быть свои состояния.
Sign up to leave a comment.
Navigation Component-дзюцу, vol. 2 – вложенные графы навигации