2016-11-12 88 views
0

我是新来的无功可可,我想知道,如果有人可以帮我解决这个问题:RACSignal:处理不兼容的块指针类型

下面的代码片段造成我的麻烦:

[[[self getFormItemAttachmentHeaders:listName 
         topListItemID:form.topListItemID 
           form:form 
] map:^id(NSMutableArray* value) { 
    NSArray* attachmentHeaders = [value copy]; 
    return attachmentHeaders; 
    } 
    ] subscribeNext:^(NSArray* attachmentHeaders) { 
    return [self uploadFormItemAttachments:pendingAttachments 
        attachmentHeaders:attachmentHeaders 
           form:form]; 
    } 
]; 

RACSignal* batchSignal = [RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscriber) { 
    [pendingAttachments enumerateObjectsUsingBlock:^(SEFSManagedAttachment* pendingImage, NSUInteger idx, BOOL *stop) { 

下面的代码行::该代码是从在相同的方法中的RACsignal对象定义为这样的称为

return [self uploadFormItemAttachments:pendingAttachments 
         attachmentHeaders:attachmentHeaders 
            form:form]; 

生成错误:

Incompatible block pointer types sending 'RACSignal *(^)(NSArray *__strong)' to parameter of type 'void (^)(__strong id)' 

回答

0

的原因的错误是因为subscribeNext块11返回空隙并通过回将生成具有方块标记的不相容性。