2017-05-04 7 views

答えて

3

あなたが直接あなたが何をすべきかFIRDataSnapshotからカスタムオブジェクトを取得することはできませんが、カスタムクラスまたは構造体との1 initを作成し、FIRDataSnapshotからオブジェクトを作成するためにそれを使用しています。

struct Med { 

    let title: String 
    let desc: String 
    init?(snapshot: FIRDataSnapshot) { 
     guard let dic = snapshot.value as? [String:Any], 
       let title = dic["title"] as? String, 
       let desc = dic["description"] as? String else { 
      return nil 
     } 
     self.title = title 
     self.desc = desc 
    } 
} 

Medこの方法の配列を取得。

let meds = snapshot.children.flatMap { Med(snapshot: $0 as! FIRDataSnapshot) } 
関連する問題