gpt4 book ai didi

ios - 使用 Firebase 值创建对象时出错

转载 作者:行者123 更新时间:2023-11-30 13:14:51 25 4
gpt4 key购买 nike

我正在尝试从 Firebase 数据库中提取信息并使用它来创建 Order 类型的对象。我在catch语句中打印的错误如下。

Error Domain=myProjectName.OrderError Code=0 "(null)"

我不确定这到底意味着什么,或者如何解决它。我在 Order 类中定义了一个自定义错误类型,如下所示。

enum OrderError: ErrorType
{
case IllegalOrderNumber
case InvalidEntry
}

该错误是由以下代码片段生成的。

self.ref.child("orders").observeEventType(.ChildAdded, withBlock: { (snapshot) in
let pickupLoc = snapshot.value!["pickupLocation"] as? String
let dropoffLoc = snapshot.value!["dropoffLocation"] as? String
let orderNumInt = snapshot.value!["orderNum"] as? Int
//since the database will return nil if you try and cast a string to an int
//we get it as an int then cast to string
let orderNum = String(orderNumInt)

do
{
let myOrder = try Order(PickUpLoc: pickupLoc, DropOffLoc: dropoffLoc, OrderNum: orderNum)!
self.orders.append(myOrder)
}
catch let error as NSError
{
//should never get here
print(error)
}
})

当用户将值输入数据库时​​,我会进行所有错误检查,因此应该没有理由生成错误。

最佳答案

好吧,在梳理我的代码后,我注意到两个主要可能的错误源。首先,尽管编译器没有提示,但 do-catch block 并不详尽,因此添加了一个额外的 catch 来解决此问题。其次,我相信该错误是由于我将 Orders 数组声明为 varorders = [Order()] 而不是 varorders=[ Order](),当我改变这个时,程序运行顺利。

关于ios - 使用 Firebase 值创建对象时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38337545/

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