gpt4 book ai didi

ios - 我的单元格正在复制以应用我对在线数据库所做的更改

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

使用此代码,我能够获取我的数据库的快照并将数据加载到 tableView 中。但是,当我尝试对在线数据库进行更改时,我得到了应用更改的重复单元格,而不是应用此更改的正常单元格。

    // Create reference to databse
ref = Database.database().reference()

// Retrieve data from firebase database and listen for changes
ref.child("Clubs").observe(.value, with: { (snapshot) in
print("clubs: \(snapshot)")

if(snapshot.exists()) {
let array:NSArray = snapshot.children.allObjects as NSArray

for obj in array {
let snapshot:DataSnapshot = obj as! DataSnapshot
if let childSnapshot = snapshot.value as? [String : AnyObject] {
print("myClubs: \(childSnapshot)")

if let clubName = childSnapshot["name"] as? String, let banner = childSnapshot["bannerImage"] as? String {
print(clubName)
print(banner)

let club = Club(name: clubName, image: banner)
print("new club success: \(club)")
self.nightClubs.append(club)
}
}
}

DispatchQueue.main.async {
self.tableView.reloadData()
}

}

})

最佳答案

只要 Clubs 中的任何值发生变化,您就会在监听器中执行代码。该代码将俱乐部附加到 nightClubs 数组,但不清除它。您需要在重新填充之前清空数组:

// Retrieve data from firebase database and listen for changes
ref.child("Clubs").observe(.value, with: { (snapshot) in
print("clubs: \(snapshot)")
self.nightClubs.removeAll() // empty array before adding values

...

关于ios - 我的单元格正在复制以应用我对在线数据库所做的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45801331/

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