快速从Firebase数据库读取子值

时间:2019-03-03 22:27:13

标签: swift firebase firebase-realtime-database sigabrt

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

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

1 个答案:

答案 0 :(得分:2)

您需要(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会使应用程序崩溃,因为它不是同步查询其数据的本地字典