2017-11-08 3 views

Antwort

2

Sie nur ein Dokument, sobald Sie eine DocumentReference haben löschen zu ihm. Um das zu erreichen, müssen Sie zuerst die Abfrage ausführen, dann die QuerySnapshot Schleife durchlaufen und schließlich jede DocumentSnapshot basierend auf ihrer ref löschen.

var jobskill_query = db.collection('job_skills').where('job_id','==',post.job_id); 
jobskill_query.get(function(querySnapshot) { 
    querySnapshot.forEach(function(doc) { 
    doc.ref.delete(); 
    }); 
}); 
0

der Schlüsselteil Antwort von Franks, dass meine Probleme behoben war der .ref in doc.ref.delete()

ich ursprünglich nur doc.delete() hatte, die eine „keine Funktion“ Fehler gab. jetzt sieht mein Code wie folgt aus und funktioniert perfekt:

let fs = firebase.firestore(); 
let collectionRef = fs.collection(<your collection here>); 

collectionRef.where("name", "==", name) 
.get() 
.then(querySnapshot => { 
    querySnapshot.forEach((doc) => { 
    doc.ref.delete().then(() => { 
     console.log("Document successfully deleted!"); 
    }).catch(function(error) { 
     console.error("Error removing document: ", error); 
    }); 
    }); 
}) 
.catch(function(error) { 
    console.log("Error getting documents: ", error); 
}); 
Verwandte Themen