如何使RxSwift自动完成功能在Xcode 10.1中工作?

时间:2019-01-18 11:18:27

标签: swift xcode rx-swift xcode10 rx-cocoa

刚刚开始学习RxSwift。即使rx命令可以正常运行,为什么自动完成功能不起作用? enter image description here

编辑:临时解决方案可能是添加asObservable,但我希望获得完整的体验! enter image description here

1 个答案:

答案 0 :(得分:-1)

这是因为未将调用bind(to :)的结果附加到一次性对象上。

您需要创建一个disposeBag

在课程范围内:

let disposeBag = DisposeBag()

.bind()。disposed之后(通过:disposeBag)

如果不保留它,则disposeBag将保留所有订阅,直到它被处置为止(如果您在类范围内声明它,它将在处置类时被处置)

此外,Rx是一个“快速”的复杂层,因此,当发生错误时,Xcode会遇到很多麻烦,无法准确地检测出错误,并且发疯地说有一个错误,但也许不是正确的错误(而且当您尝试使用自动填充时,也会发生这种情况,Xcode很烂...)您无能为力。