Firebase에서 결과를 가져와 Array에 넣으려고하는데 뭔가 놓친 것 같습니다. 내가 원했던 것은 Firebase의 'Time'과 'Blood Glucose'값을 가져 와서 차트에 사용할 배열에 넣는 것입니다. 데이터를 'BG'와 'TIME'배열에 넣을 수는 있지만 나는 'FetchedDate'와 'FetchedBG'로 그들을 '추가'때 시간이 좀 걸릴 수 있기 때문에 내가. 비동기 데이터베이스에서 빈 배열 (FetchedBG 및 FetchedDate)Firebase의 데이터를 어레이에 올바르게 추가하는 방법은 무엇입니까?
var FetchedDate:[String]! = []
var FetchedBG: [Double]! = []
//GET DATA FROM FB
func GetDetails(){
let posts = rootRef.child("Diary/\(userID!)/\(passedDATE!)")
//let posts = rootRef.queryOrderedByChild(passedDATE!)
posts.observeEventType(FIRDataEventType.Value , withBlock: { (snapshot) in
for list in snapshot.children {
if let BG = list.value.objectForKey("Blood Glucose")!.doubleValue {
self.FetchedBG.append(BG)
print(BG) // SHOWS RESULTS AS EXPECTED
}
if let TIME = list.value.objectForKey("Time") {
self.FetchedDate.append(TIME as! String)
print(TIME) // SHOWS RESULTS AS EXPECTED
}
}
}) { (error) in
print(error.localizedDescription)
}
}
override func viewDidLoad() {
super.viewDidLoad()
GetDetails()
print(FetchedDate) // EMPTY ARRAY
print(FetchedBG) // EMPTY ARRAY
대단히 감사합니다. 이제 차트에 데이터를 넣을 수 있습니다 :) – Deyan