1
全部,我在使用我正在開發的Firebase驅動應用程序時遇到了一些問題。問題出現後升級我的xCode到版本8.我已經做了一些廣泛的研究,並通過一些Stackoverflow主題試圖解決這個問題,因爲它似乎是一個非常常見的錯誤。我收集到的信息可能是我失蹤的超級明顯的東西,請原諒我的愚蠢。無法在名稱處存儲_SwiftValue類型的對象。只能存儲NSNumber,NSString,NSDictionary和NSArray類型的對象。'
這是我收到的錯誤。
無法在名稱處存儲_SwiftValue類型的對象。只能存儲NSNumber,NSString,NSDictionary和NSArray類型的對象。'
這是我發現的代碼段,我相信。
func saveUser(withUID uid: String, username: String, value: [String: String?], completion: @escaping (Error?) -> Void) {
let values = ["https://stackoverflow.com/users/\(uid)": value, "/usernames/\(username)": uid] as [String: Any]
root.updateChildValues(values) { (error, _) in
completion(error)
}
}
func updateUser(_ newValue: [String: String?]) {
currentUser.updateChildValues(newValue)
}
// MARK: - Posts
func createPost(_ _post: [String: String]) {
let userUID = Auth.shared.currentUserUID
let key = posts.childByAutoId().key
var post = _post
post["userUID"] = userUID
// get current user's username
currentUser.child("username").observeSingleEvent(of: .value, with: { snapshot in
if let username = snapshot.value as? String {
post["username"] = username
let values = [
"/posts/\(key)": post,
"/user-posts/\(userUID)/\(key)": post
]
self.root.updateChildValues(values)
}
})
}
你的'post'看起來像什麼.. – Dravidian