gpt4 book ai didi

ios - 无法在名称处存储类型为 _SwiftValue 的对象。只能存储 NSNumber、NSString、NSDictionary 和 NSArray 类型的对象。

转载 作者:行者123 更新时间:2023-11-28 08:23:43 24 4
gpt4 key购买 nike

总而言之,我在使用 Firebase 驱动的应用程序时遇到了一些问题。将我的 xCode 升级到版本 8 后出现了这个问题。我对此进行了广泛的研究,并通过一些 Stackoverflow 主题试图解决这个问题,因为这似乎是一个非常常见的错误。我想这可能是我遗漏的非常明显的东西,请原谅我的愚蠢。

这是我收到的错误。

Cannot store object of type _SwiftValue at name. Can only store objects of type NSNumber, NSString, NSDictionary, and NSArray.'

我相信这是我的代码部分。

    func saveUser(withUID uid: String, username: String, value: [String:   String?], completion: @escaping (Error?) -> Void) {
let values = ["/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)
}
})

}

最佳答案

我的代码中也出现了同样的错误,只是弄明白了。确保 values 的类型是 [String : String] 而不是 [String : String?]

关于ios - 无法在名称处存储类型为 _SwiftValue 的对象。只能存储 NSNumber、NSString、NSDictionary 和 NSArray 类型的对象。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40646900/

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