Назад к вопросам
Вкусно и точка
Junior — Middle
76
Каким образом информация, полученная из интерактора, передается в презентер?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В архитектуре VIPER интерактор отвечает за бизнес-логику и получение данных, а презентер — за подготовку данных для отображения во вью.
Информация из интерактора передается в презентер обычно через протокол (интерфейс), который презентер реализует. Интерактор вызывает методы этого протокола, передавая полученные данные или результаты операций. Таким образом, презентер получает данные и обновляет состояние интерфейса.
Пример:
protocol InteractorOutput: AnyObject {
func didFetchData(_ data: [String])
}
class Interactor {
weak var output: InteractorOutput?
func fetchData() {
// Получаем данные
let data = ["item1", "item2"]
output?.didFetchData(data)
}
}
class Presenter: InteractorOutput {
func didFetchData(_ data: [String]) {
// Обработка данных и обновление View
print("Данные получены: \(data)")
}
}
Таким образом, интерактор через делегат (output) передает данные презентеру.