Каким должен быть планировщик для задержки и отказов в Combine? (Только Xcode 12 beta 1)
Эта проблема в идеале должна быть удалена, поскольку она связана только с устаревшей бета-версией Xcode.
[WWDC Video 721 Объединение на практике][1] указывает на то, что RunLoop.main должен быть допустимым планировщиком для использования в сочетании с delay
или же debounce
но я вижу ошибки компиляции с XCode, утверждающим, что RunLoop не соответствует планировщику. Я делаю что-то не так или это просто проблема с первой бета-версией Xcode.
ContentView.swift:95:77: error: argument type 'RunLoop' does not conform to expected type 'Scheduler'
return delayPublisher.debounce(for: .seconds(5), scheduler: RunLoop.main).eraseToAnyPublisher()
Я поднял FB6160439.
[1]: https://developer.apple.com/videos/play/wwdc2019/721/ (слайды 79, 80, 211).
1 ответ
Интеграции Foundation Combine не были доступны в первой бета-версии. Они доступны во второй бета-версии (17.06.19), поэтому вам просто нужно обновить бета-версию Xcode 11.