Я пытаюсь продублировать и скопировать вложенную коллекцию в новую запись в firebase firestore с помощью пакетной записи, но у меня возникли проблемы.На данный момент ниже создается все категории, а затем подкатегории, но не создается последний вложенный объект вопроса.Как лучше всего делать что-то подобное?
catRef.snapshotChanges().pipe(
map(categories => {
categories.map(c => {
var newCatRef = this.db.collection('content').doc(newVRef.id) //categories ref
.collection('categories').ref.doc();
batch.set(newCatRef, c.payload.doc.data());
catRef.doc(c.payload.doc.id) //subcategories ref
.collection('subCategories').snapshotChanges()
.pipe(map(subCategories => {
subCategories.map(s => {
var newSubCatRef = this.db.collection('content').doc(newVRef.id)
.collection('categories').doc(newCatRef.id).collection('subCategories').ref.doc();
batch.set(newSubCatRef, s.payload.doc.data()); //batch add
catRef.doc(c.payload.doc.id) //questions ref
.collection('subCategories').doc(s.payload.doc.id)
.collection('questions').snapshotChanges()
.pipe(map(questions => {
questions.map(q => {
var newQuestionRef = this.db.collection('content').doc(newVRef.id)
.collection('categories').doc(newCatRef.id)
.collection('subCategories').doc(newSubCatRef.id)
.collection('questions').ref.doc();
batch.set(newQuestionRef, q.payload.doc.data());
});
})).subscribe(() => {
batch.commit();
});
});
})).subscribe();
});
})).subscribe();