gpt4 book ai didi

ios - Swift 3.0 的 Firebase 语法

转载 作者:行者123 更新时间:2023-11-28 12:35:18 24 4
gpt4 key购买 nike

这是从我的 iOS 应用程序中提取的一些 Firebase 相关代码:

var dataRef = firebaseRootReference?.child(byAppendingPath: "MyList")
dataRef = dataRef?.child(byAppendingPath: key)

dataRef.observe(.value, with: { snapshot in
.......
}, withCancel: { error in
print(error.description)
})

上面的代码运行良好。但是我刚刚将我的项目升级到 Swift 3.0,现在我收到此错误消息:

Cannot convert value of type '(_) -> ()' to expected argument type '((Error?) -> Void)!'

浏览网络只能找到没有错误处理部分的类似代码示例。如果我只注释掉下面的一部分,我就可以消除错误,但我怀疑这是正确的解决方案。

var dataRef = firebaseRootReference?.child(byAppendingPath: "MyList")
dataRef = dataRef?.child(byAppendingPath: key)

dataRef?.observe(.value, with: { snapshot in
.......
}/*, withCancel: { error in
print(error.description)
}*/)

在 Swift 3.0 中编写上述代码的正确方法是什么?

最佳答案

您收到此错误是因为行 print(error.description)Error协议(protocol)没有属性 description,只需将其更改为 localizedDescription 即可解决您的问题。

print(error.localizedDescription)

整个代码如下所示。

dataRef?.observe(.value, with: { snapshot in

//get data from snapshot object
}, withCancel: { error in

print(error.localizedDescription)
})

关于ios - Swift 3.0 的 Firebase 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41053026/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com