Closed krasnodar95 closed 7 years ago
@krasnodar95, привет.
В конференциях есть такой пример в SearchRouter
Если на словах, то ты из презентера текущего модуля передаешь в свой роутер сам презентер.
Затем, когда дергаешь segue в роутере при использовании McFlurry в блоке thenChainUsingBlock
есть возвращаемый параметр. Вот там ты и возвращаешь презентер текущего модуля, который передал в роутер return презентерТекущегоМодуля
И в следующем модуле в презентере ты должен создать проперти moduleOutput
закрытый протоколом наследником RamblerViperModuleOutput
. Тогда возвращаемый презентер автоматически установится в эту проперти.
Надеюсь понятно объяснил. Вот еще скину пример из конференций. А подробнее уже смотри в конференциях в SearchRouter
- (void)configureReportsSearchModuleWithSearchTerm:(NSString *)searchString moduleOutput:(id<ReportsSearchModuleOutput>)moduleOutput { [[self.transitionHandler openModuleUsingSegue:kReportListModuleToReportsSearchModuleSegue] thenChainUsingBlock:^id<ReportsSearchModuleOutput>(id<ReportsSearchModuleInput> moduleInput) { [moduleInput configureReportsSearchModuleWithSearchTerm:searchString]; return moduleOutput; }]; }
Ааа, вот в чем косяк. Я вместо RamblerEmbedSegue использовал обычный Embed segue и не врубался где его настроить. Спасибо большое за помощь, и спасибо за супербыстрый ответ)
@krasnodar95, не за что, обращайся. Со стандартным контейнером это не работает, к сожалению, поэтому да, надо использовать просто вью + RamblerEmbedSegue
Доброго времени суток. Могли бы вы показать пример того как настроить в роутере родительского модуля, встроенный модуль(который встроен через Embed segue)? Конкретно я хочу сделать родительский модуль как RamblerViperModuleOutput от встроенного модуля. И затем записать в свойство встроенного модуля moduleOutput этот самый родительский модуль. Я не пойму где нужно сделать эту настройку в случае со встроенными модулями.