完成setValue()会导致Firebase,Swift 3崩溃

时间:2016-09-17 16:17:11

标签: ios swift firebase firebase-realtime-database swift3

我目前正在将应用程序更新为Swift 3和iOS 10.问题出在我使用的时候:

    self.ref.setValue(value, withCompletionBlock: { (error: Error?, _:FIRDatabaseReference) in
            //Code
        })

应用程序崩溃时没有任何关于它为什么会这样做的信息。如果我删除完成,它可以正常工作。

1 个答案:

答案 0 :(得分:2)

试试这段代码,我希望这可以解决问题

// U can use this to set value to your database
func setValue() {
    let myRef = FIRDatabase.database().reference().child("Your path")
    let valueForChild: String = "newValue"
    let newValue = ["childName": valueForChild] as [String: Any]
    myRef.setValue(newValue) { (error, ref) in
        if error != nil {
            print(error?.localizedDescription ?? "Failed to update value")
        } else {
            print("Success update newValue to database")
        }
    }
}

// or this to update new value to your database
func updateValue() {
    let myRef = FIRDatabase.database().reference().child("Your path")
    let valueForChild: String = "newValue"
    let newValue = ["childName": valueForChild] as [String: Any]
    myRef.updateChildValues(newValue) { (error, ref) in
        if error != nil {
            print(error?.localizedDescription, "Failed to update value")
        } else {
            print("Success update newValue to database")
        }
    }
}