Мне удалось создать код для добавления объектов в соответствующий массив в зависимости от категории продукта, но по той же логике я не могу его удалить.У кого-нибудь есть идеи, как это сделать?
Организация Firestore (поле для удаления имеет красную стрелку, компоненты массива расположены в документе):
async addComponentToBuild(userId, buildId, component) {**//THIS METHOD IS WORKING**
const fieldName = `components.${component.CATEGORY}`
const updateObj = {};const compObj ={}
compObj[component.PRODUCTNAME] = component
updateObj[fieldName] = FieldValue.arrayUnion(compObj)
return this.usersDb.doc(userId).collection('builds').doc(buildId)
.update(updateObj)
.then(doc => { `Component ${component.PRODUCTNAME} added`})
.catch(handleError)
}
async deleteComponentFromBuild(userId, buildId, componentId) {
var component = await this.getSingleComponent(componentId)
var fieldName = `components.${component.CATEGORY}`//.${componentId}
const updateObj = {}
updateObj[fieldName] = FieldValue.arrayRemove(componentId)
return this.usersDb.doc(userId).collection('builds').doc(buildId).update(updateObj)
.then(doc =>
{ `Component ${component.PRODUCTNAME} deleted`}
)
.catch(handleError)
}