RAC take指定信号

2018-01-09  本文已影响0人  NextStepPeng

RACSubject *subject = [RACSubject subject];

    //take指定拿前面的哪几条数据!(从前往后)

    // takeLast:指定拿前面的哪几条数据 !!(从后往前) [subject sendCompleted];

//    [[subject take:2] subscribeNext:^(id  _Nullable x) {

//        NSLog(@"%@",x); // 这是 之后打印 1 和 2

//    }];

    [[subject takeLast:1] subscribeNext:^(id  _Nullable x) {

        NSLog(@"%@",x);

    }];

    [subject sendNext:@"1"];

    [subject sendNext:@"2"];

    [subject sendNext:@"3"];

    [subject sendCompleted];

takeUntil

RACSubject *subject = [RACSubject subject];

    //标记专用信号

    RACSubject *signal = [RACSubject subject];

    //take指定拿前面的哪几条数据!(从前往后)

    // takeLast:指定拿前面的哪几条数据 !!(从后往前) [subject sendCompleted];

//    [[subject take:2] subscribeNext:^(id  _Nullable x) {

//        NSLog(@"%@",x); // 这是 之后打印 1 和 2

//    }];

//    [[subject takeLast:1] subscribeNext:^(id  _Nullable x) {

//        NSLog(@"%@",x);

//    }];

    //takeUntil :直到标记的信号发送数据的时候结束;

    [[subject takeUntil:signal] subscribeNext:^(id  _Nullable x) {

        NSLog(@"%@",x);

    }];

    [subject sendNext:@"1"];

    [signal sendNext:@"..."];//[signal sendCompleted];

    [subject sendNext:@"2"];

    [subject sendNext:@"3"];

    [subject sendCompleted];

上一篇 下一篇

猜你喜欢

热点阅读