我在 RxSwift 中有这个:
func foo() -> Observable<Int> {
let subject = RxSwift.ReplaySubject<Int>.create(bufferSize: 1)
return subject.asObservable()
}
我如何在 ReactiveKit 中实现相同的概念?
最佳答案
使用目前处于测试阶段的 ReactiveKit 3(rk3 分支),您可以:
func foo() -> Signal<Int, NoError> {
let subject = ReplaySubject<Int, NoError>(bufferSize: 1)
return subject.toSignal()
}
在 ReactiveKit 2 中,ReplaySubject 被泛化为事件:
func foo() -> Stream<Int> {
let subject = ReplaySubject<StreamEvent<Int>>(bufferSize: 1)
return Stream(rawStream: subject.toRawStream())
}
或
func foo() -> Operation<Int, Error> {
let subject = ReplaySubject<OperationEvent<Int>>(bufferSize: 1)
return Operation(rawStream: subject.toRawStream())
}
关于swift - 如何在 ReactiveKit 中使用 ReplaySubject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39281933/