Swift,是否有可能使ReactiveCocoa适用于协议

时间:2015-07-12 10:14:49

标签: swift reactive-cocoa

如果代码是接口驱动器,我认为这很好 那么如何让ReactiveCocoa在swift中为协议工作呢? e.g。

AuthenticationTicket ticket = new AuthenticationTicket(claimsIdentity, new AuthenticationProperties());
string token = Startup.OAuthServerOptions.AccessTokenFormat.Protect(ticket);

1 个答案:

答案 0 :(得分:2)

RACObserve建立在KVO之上,因此要使其工作name需要是键值观察。 Swift中的对象默认不符合KVO。

您可以通过继承NSObject

来添加KVO合规性
class Foo : NSObject, SomeBody {
    var name: String = ""
}

或使个人财产可观察:

class Foo : SomeBody {
    dynamic var name: String = ""
}

AFAIK,没有办法通过协议定义强制执行此行为,只在单独的实现中支持它。