【发布时间】:2020-01-05 07:40:33
【问题描述】:
我正在尝试列出通过带有转义闭包的函数接收到的过滤器项目的结果。 如果我在 Playground 中尝试该功能,它可以工作,所以现在我尝试在 SwiftUI 列表中使用它。
但是 Xcode 给了我警告...
无法将类型“()”的值转换为闭包结果类型“_”
这里是我的搜索功能
typealias exit = (([AirportModel]) -> ())
func filter (valoreSearhed: String, arrayTosearh: [AirportModel], closure: @escaping exit) {
DispatchQueue.global().async {
let aeroportoFiltrato = arrayTosearh.filter { $0.aptICAO.localizedCaseInsensitiveContains(valoreSearhed) }
closure(aeroportoFiltrato)
}
}
这里是我的清单
var body: some View {
VStack {
// fakebar
SearchBar(text: $searchTerm)
List {
dm.filter(valoreSearhed: searchTerm, arrayTosearh: dm.airportVector) { (item) in
ForEach(item) { valore in
Text(valore.aptICAO)
}
}
}
}
}
【问题讨论】:
标签: arrays swift sorting closures swiftui