gpt4 book ai didi

ios - Swift 3 - 将 Firebase 数据保存在数组中

转载 作者:行者123 更新时间:2023-11-30 12:30:08 26 4
gpt4 key购买 nike

我尝试将 Firebase 数据保存在数组中,但数组计数每次都是 0。

override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)

getAllSkateShops()
}


func getAllSkateShops() {

ref = FIRDatabase.database().reference()

ref.child("Shops").observeSingleEvent(of: .value, with: { (snapshot) in

//var newShops: [SkateShop] = []

for item in snapshot.children {

let skateShopItem = SkateShop(snapshot: item as! FIRDataSnapshot)
self.shops.append(skateShopItem)
DispatchQueue.main.async(execute: {
print("OBSERVE SHOP COUNT: \(self.shops.count)")
})
}

})
}

在函数 viewDidLoad() 中,self.shop.count 为零,但我需要这个包含所有商店的数组。

我希望有人能帮助我;)

最佳答案

我遇到了同样的问题,不知道为什么会这样,但在 DispatchQueue.main.async 中执行(已编辑):

func getAllSkateShops() {

ref = FIRDatabase.database().reference()

ref.child("Shops").observeSingleEvent(of: .value, with: { (snapshot) in

//var newShops: [SkateShop] = []

for item in snapshot.children {

let skateShopItem = SkateShop(snapshot: item as! FIRDataSnapshot)
self.shops.append(skateShopItem)
self.shops2.append(skateShopItem)
DispatchQueue.main.async(execute: {
var temporaryArray = self.shop2
self.shop = temporaryArray
})
}

})
}

如果这不起作用评论,我会提供另一个可能有效的选项。

关于ios - Swift 3 - 将 Firebase 数据保存在数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43659761/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com