Consegui corrigir isso mapeando meu objeto e executando 2 atualizações separadas. O primeiro remove o elemento antigo e o segundo adiciona a versão atualizada. Tenho certeza de que há uma maneira melhor de fazer isso, no entanto, isso parece funcionar.
handleFormSubmit(event) {
event.preventDefault();
const { careerHistoryPositions } = this.state;
ProfileCandidate.update({_id: this.state.profileCandidateCollectionId}, { $unset: {
'careerHistoryPositions': {}
}
})
const updatePosition = this.state.careerHistoryPositions.map((position) => {
ProfileCandidate.update({_id: this.state.profileCandidateCollectionId}, { $push: {
'careerHistoryPositions': {
company: position.company,
title: position.title,
uniqueId: position.uniqueId
}
}
})