【发布时间】:2018-04-04 09:17:21
【问题描述】:
我有两个功能:
class ProductController: NSObject {
var products = [Product]()
func getData(){
let json = JSONParser()
let path = "http://localhost:8888/myApi/product/read.php"
json.getRequest(url: path) { (products) in
self.products = products
print("closure")
print(self.products)
}
}
func getPr() -> [Product]{
return self.products
}
}
我正在打电话:
let pc = ProductController()
pc.getData()
print(pc.getPr())
但是pc.getData() 的调用总是最后一个,所以我从pc.getPr() 得到[]。在致电getPr() 之前,如何从getData() 获得产品?
【问题讨论】:
-
你注意到它被称为“为时已晚”,这是许多新人不知道的一点。现在,您缺少的概念是“异步”。关于 SO 有很多问题,如何在 Swift 中使用闭包来管理它们。
标签: ios json swift parsing closures