【问题标题】:Firebase Retrieving Data, returning FATAL ERROR Index Out of RangeFirebase 检索数据,返回 FATAL ERROR Index Out of Range
【发布时间】:2016-11-21 23:20:01
【问题描述】:

Firebase 检索数据,返回 FATAL ERROR Index Out of Range

我有这个从 Firebase 检索项目的类:

现在,当我尝试将这些数据放入某个地方时,例如我会做的事情,

let item = [CalendarItem]()
let items = item[item.count] <-- ERROR HERE

textLabel.text = items.name

但是我得到了这个错误(致命错误:索引超出范围}

以下是控制台中早期创建的项目:

我做了一个print(item.count) 并且我得到了 0 因此错误,但我不明白为什么这些项目在控制台中。

请有人指出正确的方向。

【问题讨论】:

  • 很高兴您找到了问题的原因。对于未来的问题:请将实际代码和 JSON 作为文本发布,而不是发布它们的图片。 StackOverflow 很好地突出显示它们并将它们作为文本使其可搜索,使我们能够轻松地使用它来测试您的实际代码/数据并在我们的答案中使用它,通常只是一件好事。跨度>

标签: swift firebase firebase-realtime-database


【解决方案1】:

想通了...只是实际上并没有调用观察来将项目加载到数组中

    ref.observe(.value, with: { snapshot in
                print(snapshot.value!)
                var newItems: [CalendarItem] = []
                for item in snapshot.children {
                     let calendarItem = CalendarItem(snapshot: item as! FIRDataSnapshot)
                     newItems.append(calendarItem)
                }
               self.calanderDate = newItems
               //self.tableView.reloadData()
            })

【讨论】:

    猜你喜欢
    • 2013-04-27
    • 2021-03-25
    • 2018-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-04
    • 2020-11-25
    相关资源
    最近更新 更多