2017-01-13 4 views
0

Ich bin mit diesem Fehler alles ist gut, ich möchte die Kinder von "12356" in der Konsole drucken, aber ich bekomme diesen Fehler Ich weiß nicht, warum das passiert und hier ist die Firebase Struktur enter image description herekann nicht Instanz Mitglied 'Ref' mit dem Initialisierungsfehler

und dies ist der Xcode Fehler enter image description here

und hier ist der Code

import UIKit 
import Firebase 
import FirebaseDatabase 

class TestViewController: UIViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 

    // Do any additional setup after loading the view. 
} 


var ref = FIRDatabase.database().reference() 


let root = ref.child("Items").child("Flate").child("12356") 

root.observeSingleEvent(of: .value, with: { snapshot in 

if !snapshot.exists() { return } 

//print(snapshot) 

if let myfRateA = snapshot.value["fRateA"] as? String { 
print(myfRateA) 
} 
if let myfRateB = snapshot.value["fRateB"] as? String { 
print(myfRateB) 
} 
}) 


override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

} 
+4

_please mich statt Abstimmung down_ helfen nicht, was Sie in einem Titel hinzufügen sollten. Ich schlage vor, dass Sie das bearbeiten. – Bugs

+0

Ok, ich weiß es, aber ich habe es getan, ich aktualisiere jetzt. –

Antwort

1

Sie haben Ihren Code nicht an die richtige Stelle gesetzt, da er außerhalb jeder Methode oder Funktion liegt. Legte es in den Körper einer Funktion wie so:

func printChildren(){ 

let ref = FIRDatabase.database().reference() 


let root = ref.child("Items").child("Flate").child("12356") 

root.observeSingleEvent(of: .value, with: { snapshot in 

if !snapshot.exists() { return } 

//print(snapshot) 

let myfRateA = (snapshot.value as? NSDictionary)?["fRateA"] as? String ?? "" 
print(myfRateA) 
let myfRateB = (snapshot.value as? NSDictionary)?["fRateB"] as? String ?? "" 
print(myfRateB) 

}) 

} 

Und nennen Sie es in viewDidLoad() wie so:

override func viewDidLoad() { 
    super.viewDidLoad() 
    self.printChildren() 
} 
+0

immer noch bekomme ich einen Fehler: Typ Index hat keine Mitglied –

+0

@ Max auf welcher Linie ?? –

+0

Danke für Ihre Unterstützung, aber immer noch einen Fehler Typ "Any?" hat kein tiefgestelltes Mitglied –

Verwandte Themen