首页 > 解决方案 > 快速从firebase数据库中读取子值

问题描述

我正在尝试读取一个子值,因此我可以将 1 添加到它然后更新该值,但是我读取该值的代码给了我一个 SIGABRT 错误并崩溃,它有什么问题?REF_FEEDMESSAGES 是对包含所有消息的数据库的引用

var stringLikes = REF_FEEDMESSAGES.child(key).value(forKey: "likes") as! String ?? "0"

标签: swiftfirebasefirebase-realtime-databasesigabrt

解决方案


您需要(observe/observeSingleEvent取决于您的应用程序逻辑)

REF_FEEDMESSAGES.child("\(key)/likes").observeSingleEvent(of: .value, with: { (snapshot) in
  // Get user value

  }) { (error) in
    print(error.localizedDescription)
}

使用它.value(forKey: "likes") as! String肯定会使应用程序崩溃,因为它不是本地字典来同步查询它的数据


推荐阅读