которое подгружают и отображают разные данные. Насколько корректно во вьюмодели каждого из них инжектить разные экземпляры репозиториев? С одной стороны - это растрачивание памяти, а с другой не совсем понятно, каким тогда образом заставлять фрагменты грузить и отображать разные данные с одним репозиторием. Плюс репозиторий отвечает за пагинацию, которая для каждого из фрагментов также может быть в своем состоянии.
2. С одного из фрагментов нужно перейти на второй, передав большой массив уже загруженных в репозиторий данных. Как с помощью Hilt можно расшарить один репозиторий на два фрагмента, чтобы не дублировать данные и пользоваться одним источником? Не делая его синглтоном
В DI я слегка профан, но вот 1 момент напргяает: Что имеешь в виду под "Плюс репозиторий отвечает за пагинацию, которая для каждого из фрагментов также может быть в своем состоянии. " Если речь о том что тебе стейт пагинации нужен только в рантайме - то очевидно что его совсем не нужно отдавать куда-то на data later, пускай висит себе в какой-то viewmodel. Если тебе нужно его сохранять в persistent storage какой-то и у тебя есть разные фрагменты, то очевидно что тебе нужно их хранить как-то по ключу ( в виде класса фрагмента например), а не держать разные репозитории для этого. То выходит так что у тебя репозиторий именно внутри себя стейт, что бред, т.к он должен быть просто интерфейсом который просто отдает\сохраняет ровно то что ему в параметрах прилетает и поэтому он вполне может быть синглтоном своебразным - если обьект без внутреннего стейта, то плодить его сущности особо смысла нет.
Обсуждают сегодня