ios - 在新的 Firebase 4.0 版本中获取数据库引用

标签 ios swift firebase firebase-realtime-database

在 Firebase 3.0+ 中,获取数据库引用的方法是这样的:

var ref: FIRDatabaseReference!

ref = FIRDatabase.database().reference()


ref.child("rooms").observeSingleEventOfType(.Value, withBlock: { (snapshot) in

    if snapshot.hasChild("room1"){

        print("true rooms exist")

    }else{

        print("false room doesn't exist")
    }

})

在 Firebase 4.0 中,命名约定发生了变化,但我无法让它工作!?

var ref: DatabaseReference!    
ref = Database.database().reference()

有没有人遇到过这个?

swift 编译器建议从小写数据库函数调用中删除 ()

如果你删除它,它会抛出错误信息:

  • 数据库没有成员引用

那么你如何获得引用!?

Pod 文件:

pod 'Firebase/Core'
pod 'Firebase/Database'

最佳答案

您需要使用更新代码,也许编译器没有很好地建议修复

var ref: DatabaseReference!

ref = Database.database().reference()  

ref.child("rooms").observeSingleEvent(of: .value, with: { (snapshot) in

  // ...

  })

如您所见,代码运行完美,请考虑pod deintegrate & pod update

enter image description here

关于ios - 在新的 Firebase 4.0 版本中获取数据库引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44078673/

相关文章:

curl - 通过 REST API 将对象添加到 Firebase 时如何设置我们自己的 key

ios - Xcode 11.1 - 找不到身份命令 PhaseScriptExecution 失败,退出代码非零

ios - Xcode 错误 : calling -display has no effect

ios - captureStillImageAsynchronouslyFromConnection 返回 nil 错误

ios - Firebase View Controller 的 Viewdidload 和观察方法未被调用,没有任何内容打印到控制台

java - 将 firebase 添加到使用 gradle 构建的 libgdx 项目

ios - 如何区分 UIScrollView 中的平移和滚动

ios - 无法对 flurry 崩溃日志进行去符号化

swift - 解决 Swift 3 中过多的 else-if 语句

ios - 无法快速获取 View Controller 的索引,该 View Controller 是 UINavigationController 的 View Controller