yourfriendzak yourfriendzak - 4 months ago 13
Objective-C Question

How do I create a ReactiveCocoa subscriber that recieves a signal only once, then unsubscribes/releases itself?

I'm currently registering a subscriber to a property signal like this:

[RACAble(self.test) subscribeNext:^(id x) {
NSLog(@"signal fired!");
}];


The default functionality is that it fires every single time self.test is changed, but I just want it to fire once, and then unsubscribe. Is there a "once" argument or modifier I can pass to RAC when I create this subscriber?

Answer
[[RACAble(self.test) take:1] subscribeNext:^(id x) {
    NSLog(@"signal fired!");
}];
Comments