gpt4 book ai didi

objective-c - 在 Swift 中编写 block 函数

转载 作者:搜寻专家 更新时间:2023-10-30 21:49:32 28 4
gpt4 key购买 nike

我将如何在 swift 中编写此 block 函数。我已经通读了这个主题,但语法对我来说意义不大。

MyAppRequest *request = [_agent login];
[request sendWithLoadMessage:@"Signing In"
successMessage:@"Signed In"
failureMessage:@"Failed to log in"
recoveryOptions:@"If you keep having trouble, try going to http://mystrou.firehosehelp.com and try loggin in there. If that fails, try resetting your password"
success:^(MyAppResponse *response) {
PREFS.authToken = _agent.accessToken;
[_delegate loginViewController:self loggedInAgent:_agent];
} failure:^(MyAppResponse *response) {

}];

最佳答案

其实并没有那么难。在 Swift 中称为闭包)。

public func someFunction(success: (response: AnyObject!) -> Void, failure: (error: NSError?) -> Void) {

}

这就是你如何调用它。

someFunction(success: { (response) -> Void in
// Handle success response
}) { (error?) -> Void in
// Do error handling stuff
}

在你的例子中,我得到这个 block 处理一些服务器响应。最有可能登录。如果网络操作成功,将调用 success block 。在其中,您保存从服务器接收到的访问 token 。

如果网络请求失败,将调用failure block 。您可能想要记录错误,向用户显示警报之类的内容。

如果您对语法感到困惑,我建议您引用这两个站点。对于 Objective-C block syntaxSwift closure syntax .

关于objective-c - 在 Swift 中编写 block 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26134105/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com