大家好我正在使用firebase创建聊天应用。
当我进入屏幕创建一个频道时,它会在解开可选值时崩溃说找到nil。如果我回到应用程序,通道已经创建,所以我认为它在更改viewcontrolers时发现nil,并且数据库中的消息下的新通道必须没有任何内容。下面是代码和崩溃的地方。
var channelRef: FIRDatabaseReference?
private lazy var messageRef: FIRDatabaseReference = self.channelRef!.child("messages")
然后它崩溃了......
private func observeMessages() {
messageRef = channelRef!.child("messages")
在view did load
上调用此函数答案 0 :(得分:0)
不要强行拆开,而应使用和if let
这样:
if let channelRef = channelRef {
messageRef = channelRef.child("messages")
} //maybe add an else and do some logic if value is not there
或者如果您希望它始终存在并且属于此类型,您可以声明var channelRef: FIRDatabaseReference!