目前想写类似这样的功能
[self callAPIWithCompletionHandler:^(NSString *strResponse) {
我以为会在这边执行下方NSLUELSESSION完才继续往下,所以在这边写了
if(xxx=xxx){
[self.navigation push xxx];
}
else{
self.navigation push.....
}
}
-(void)callAPIWithCompletionHandler : (void (^) (NSString * strResponse))
completionHandler
{
NSURLSessionTask *task = [session uploadTaskWithRequest:request
fromData:body completionHandler:^(NSData * _Nullable data, NSURLResponse *
_Nullable response, NSError * _Nullable error) {
// 这边掠过
}];
[task resume];
}
但她都会先跑完 if(xxx=xxx){
[self.navigation push xxx];
}
else{
self.navigation push.....
}
之后等读取完成后再跑一次,导致我同一页推出去不止一次..
按上方返回后可以看到大概跑了2.3页,请问是否我理解错误,在block内会先跑到底
等回传后又再跑一次,还是我哪里写法有问题呢!?