苹果在 Swift 5 中引入了Result
类型。它是具有两种情况的通用枚举:
public enum Result<Success, Failure: Error> {
case success(Success), failure(Failure)
}
就我个人而言,我习惯在网络调用中进行两次单独的完成success: Completion
and failure: Completion
,但从我现在看来,苹果推动我们使用单一完成Result
键入然后在里面执行开关。那么这种方法有什么优点Result
?因为在很多情况下我可以省略错误处理而不写这个switch
。谢谢。
当以下情况时你不应该忽略大小写Result
is failure
。你不应该这样做Result
而且你不应该因为失败而关闭。你应该处理错误.
Anyway, Result
引入 type 是为了简化完成处理程序。您可以使用单个闭包来处理成功或失败(基于主要意见,两个单独的闭包是否更好)。还Result
是为错误处理而设计的。您可以简单地创建自己的enum
符合Error
然后您可以创建自己的错误案例。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)