嘿我试图简单地将databaseList变量放在.updateChildValues(databaseList)中
代码:
var databaseList = [[String: Any]]()
Database.database().reference().child(childref).child(Auth.auth().currentUser!.uid).child("node").updateChildValues((databaseList as? [String: Any])!) { (error, value) in
if error != nil {
print("Error")
return
} else {
print("Success")
}
}
警告:从'[[String:Any]]'转换为无关类型'[String:Any]'始终失败
Attemp number 2 Code:
Database.database().reference().child(childref).child(Auth.auth().currentUser!.uid).child("node").updateChildValues(databaseList)
红色错误:无法将'[[String:Any]]'类型的值转换为预期的参数类型'[AnyHashable:Any]'
还要注意我需要使用databaseList来保持[String:Any]
答案 0 :(得分:0)
您明确声明databaseList
为[[String:Any]]
而不是[String: Any]
:
var databaseList = [[String: Any]]()
将此更改为
var databaseList = [String: Any]()
答案 1 :(得分:0)
您无法将一系列词典放入Firebase。但是,你可以做的是遍历你的databaseList
对象,并在你的引用下创建一个唯一的密钥来存储这个字典。
答案 2 :(得分:0)
[]
表示数组,而[:]
表示字典。 [String: Any]
表示字典,其所有键都是字符串。 var databaseList = [String: Any]
您正在创建一个字典数组。在下一次尝试中,您尝试从已声明为数组的变量中转换字典。所以它失败了。
解
var databaseList = [String: Any] ()