在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
通常在Swift中定义一个闭包来使用 typealias Closure= (Any?) -> () var tempClosure :Closure? /// 定义一个方法直接调用 func closure(_ closure:@escaping closure) { self.closure = closure }
上面就是我们经常使用闭包的方法,这个方法的弊端就是,在项目工程中typealias满天飞,到处都是定义的闭包,这个时候结合泛型对闭包做如下的修改 public typealias GenericClosure<T> = (T) -> ()
这样定义之后我们在需要使用的时候就可以随意的定义闭包的参数类型了 var stringClosure:GenericClosure<String>? var stringClosure:GenericClosure<(title:String,model:Any)>? var voidClosure:GenericClosure<()?>
|
请发表评论