问题是因为
updateChildValues
它将更新特定子级的整个值,您将在for循环中调用它。尝试创建字典数组并直接设置整个数组。这样地。
let arrayOfDic = prodItems.map({ ["Uploaded" : timeStamp, "Order" : "\($0.amount) \($0.name)"] })
self.ref?.child("Orders").child(childByAutoId).updateChildValues(arrayOfDic, withCompletionBlock: { (error, ref) in
if error != nil{
print(error!)
}
})
编辑:
如果要将order设置为字符串值,请按如下方式设置。
let order = array.map({ String(format: "%d %@", $0.amount, $0.name) }).joined(separator: ", ")
let dic = ["Uploaded" : timeStamp, "Order" : order]
self.ref?.child("Orders").child(childByAutoId).updateChildValues(dic, withCompletionBlock: { (error, ref) in
if error != nil{
print(error!)
}
})