Как стать автором
Обновить

Впечатление от Стэнфордских курсов CS193P Весна 2020 г.: Разработка iOS приложений с помощью SwiftUI

Время на прочтение10 мин
Количество просмотров10K
Всего голосов 6: ↑6 и ↓0+6
Комментарии2

Комментарии 2

Интересно, как обертка (кажется @Published?) под капотом обеспечивает постоянную актуальность модели. Не может же она непрерывно дергать APIs и отслеживать изменения? Или если так, то как быть в условиях ограничений на количество запросов / возрастет ли нагрузка на сервера?
Если вы имеете ввиду запросы к трекеру полетов FlightAware, то там работает таймер:
fetchTimer = Timer.scheduledTimer(withTimeInterval: interval, repeats: false, block: { [weak self] timer in
                if (self?.fetchInterval ?? 0) > 0 || (self?.fetchSequenceCount ?? 0) > 0 {
                    self?.fetch()
                }
            })

Вы сами задаете интервал обновления.
А в fetch() уже работает @Published, а точнее CurrentValueSubject<Set, Never>([]), но это близко к @Published, и это воздействует на View SwiftUI.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации