我希望无论发布链的结果如何都能运行一段代码块。在Combine + Swift中是否有类似的东西?
类似下面这样的东西:
类似下面这样的东西:
func doSomeLongRunningTask() -> AnyPublisher<Void, Error> {
return Future<Void, Error> {
showSpinner()
}.tryMap {
longRunningTaskCanThrowError()
}.ensure {
hideSpinner()
}.eraseToAnyPublisher()
}