Ik weet niet of Mongoose 5.0.0 standaard Arrayfilters zou moeten ondersteunen, maar je kunt dit bereiken door de opdrachtmethode van Mongoose te gebruiken die rechtstreeks op MongoDB wordt uitgevoerd, en dus alle beschikbare functies kan gebruiken, waaronder ArrayFilters op MongoDB 3.6.1
Voorbeeld:
mongoose.connection.db.command({
update: <YourModel>.collection.name,
updates: [
{
q: { 'field1.field2._id': mongoose.Types.ObjectId(<someObjectid>) },
u: {
$set: { 'field1.$.field2.$[field].fieldToUpdate': "updated!" },
},
arrayFilters: [
{ 'field._id': mongoose.Types.ObjectId(<someObjectid>) },
],
},
],
})