在swift中嵌套闭包中的位置引用闭包参数

我有这段代码工作正常:

var discoverEvents = events.map { event in
   userEvents.find { $0.eventID == event.eventID } ?? event
}

我想知道是否有任何方法find某种方式引用event

var discoverEvents = events.map { userEvents.find { $$0.eventID == $0.eventID } ?? $0 }

使其成为一线?


不,这是不可能的。 内部$0影响外部范围,并且没有其他方式可以引用外部范围中的$0

正如@DavidBerry所提到的那样,这种语法只适用于简短的匿名函数。 否则事情会变得非常混乱。

链接地址: http://www.djcxy.com/p/31785.html

上一篇: Closure arguments referenced by position inside nested closure in swift

下一篇: Uploading an image cropped using a cropper.js plugin