我在RxSwift
的构建错误以下,
func testFlatMap() {
let bag = DisposeBag()
let subject = PublishSubject<String>.init()
subject.flatMap({ (value) -> String in
PublishSubject.just(value)
}).subscribe(
onNext: { value in
print(value)
}
).disposed(by: bag)
subject.on(.next("Test"))
}
实例方法“flatMap”要求“字符串”符合“ObservableConvertibleType”
我想念什么?
最佳答案
这就是问题:
subject.flatMap({ (value) -> String in
PublishSubject.just(value)
})
在第一行中,您告诉编译器闭包返回
String
,但是flatMap
要求闭包返回Observable类型。此外,仅供参考:
a.flatMap { .just($0) }
实际上是一项禁止操作的操作。换句话说:
a
≣a.flatMap { .just($0) }
关于ios - 实例方法“flatMap”要求“字符串”符合“ObservableConvertibleType”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60057184/