Jeg kan ikke sige, hvad der går galt med dit eksempel, udover at du gør det på den forkerte måde. MongoDB giver en nemmere, indbygget måde at fjerne elementer fra et array enten ved at specificere nøjagtigt eller via en forespørgsel:
Se $pull
operatør
.
I mongoose ville en måde at gøre dette på være:
Article.findByIdAndUpdate(this._id, {
$pull: {
likes: {user: user._id}
}
}, cb);