Ich weiß, dass es gibt 1000 Antworten auf diese Frage, die teilweise ist, warum ich so verwirrt bin durch die Tatsache, dass ich es nicht zur Arbeit bekommen kann.Firebase (Web) kann OrderByChild nicht zur Arbeit
Ich kann die OrderByChild Query/Filter nicht funktionieren. Ich habe mindestens 25 Tutorials sah, Anleitungen und Artikel online, die es erklären und sie alle scheinen zu sagen, genau das zu tun, was ich tue:
var dbRef = firebase.database().ref();
var filterExperience = dbRef.child("Users").orderByChild('trade_general').equalTo('Construction');
filterExperience.on('child_added', snap => {
// Just trying to figure out if anything's even happening
console.log("Test" + snap.val());
// Set Card ID
$('#cand-card').attr('id', 'cand-card' + snap.key);
// Set Name
$('#fullname').attr('id', 'fullname' + snap.key);
$('#fullname' + snap.key).text(snap.child("Personal").child("first_name").val() + " " + snap.child("Personal").child("last_name").val());
// And so on...
Und für das Protokoll, ist Feuerbasis alle Set richtig auf. Ich habe den Ausschnitt am Ende meiner HTML-Seite und ich habe gelesen/geschrieben Datensätze ohne Problem.
Meine Datenbank sieht wie folgt aus:
Users
|
|--KYQ0L5TStcZM1rgVpte
|
|-Account
|-Availability
|-Education
|-Location
|-Work_History
|
|-Recent_Job_1
|
|-employer_name: "abc company"
|-job_position: "concrete finisher"
|-trade_general: "Construction"
Das Ergebnis, das ich erhalte ist: absolut nichts. Nichts in der Konsole von diesem Test, den ich direkt nach dem "Snap" ausgeführt habe. Nichts auf der Seite.
In Ihrem JSON gibt es keine Eigenschaft mit dem Namen 'trade_general'. –
Mein schlechtes. Es ist dort in Firebase, nur vergessen, es hier zu kopieren. Ich hatte lange Zeit versucht, Anfragen zu bekommen, um mit numerischen startAt & endAt's zu arbeiten, und hatte das gerade aufgegeben, um zu sehen, ob ich etwas (scheinbar) einfacheres zum Arbeiten bekommen könnte; wie equalTo. So war "job_years" in meinem Kopf die relevante Information für diese Frage. –