带有Realm对象存储的RxSwift变量

时间:2016-03-17 02:26:11

标签: ios swift realm rx-swift

我有一些问题需要了解是否有任何支持将RxSwift与Realm结合起来,因为Realm明确说明了受支持的变量类型。

是否可以代替以下内容。

import RealmSwift

class Dog: Object {
  dynamic var name = ""
}

做这样的事。

import RealmSwift
import RxSwift

class Dog: Object {
  var name = Variable<String>("")
}

我做了一些谷歌搜索,但没有找到有关扩展或其他解决方案的最新信息。希望得到任何帮助或只是指出正确的方向。

1 个答案:

答案 0 :(得分:2)

如何使用KVO代替rx_observe()?如下所示:

dog
    .rx_observe(String.self, "name")
    .subscribeNext { name in
        print("string: \(name)")
}

但是对于未使用KVO持久存在的Realm对象存在限制。

对于持久对象,观察没有限制。

注意:

  

观察Object子类的独立实例的属性就像使用任何其他动态属性一样,但请注意,当它具有任何已注册的观察者时,您无法将对象添加到Realm(使用realm.add(obj)或其他类似方法)

https://realm.io/docs/swift/latest/#key-value-observation