2017-10-18 7 views
1

J'ai une base de données qui ressemble à ceci:sur l'enfant ajouté ne pas retourner quoi que ce soit

enter image description here

/* 
    formsById 
    formId 
     usersList 
     userId 
    */ 

Ce que je veux faire est de renvoyer une référence de tous les utilisateurs (usersList) associé à un particulier formId. Voici ma méthode dans mon fournisseur:

// this returns a list of users (ref) of the current form 
    getFormsUsersRef(formId): firebase.database.Reference { 
    let formsRef = firebase.database().ref("formsById"); 
    return formsRef.child(formId).child("usersList");  
    } 

Et voici le code dans mon composant:

// list the forms 
    ionViewDidLoad() { 
    this.sharingProvider.getFormsUsersRef(this.formId).on('child_added', fuSnap => { 
     // not returning anything 
     console.log(fuSnap); 
    }); 
    } 

Si je journal de la console ce que le getFormsUsersRef revient est correct (il est une référence de base de données) , cependant mon .on ('child_added') ne retourne rien du tout.

J'utilise cette même méthodologie sur un ensemble de données différent dans cette application et cela fonctionne parfaitement, la seule différence est que mes userId sont stockés comme des valeurs uid firebase et non des touches de commande?

Toute aide appréciée J'ai été bloqué sur cela pendant des heures maintenant.

Répondre

1

Donc il se trouve que je référence formsById pas formsByID - son fonctionne maintenant correctement.

getFormsUsersRef(formId): firebase.database.Reference { 
    let formsRef = firebase.database().ref("formsByID"); 
    return formsRef.child(formId).child("usersList");  
    }