как сделать обновление api для вложенного объекта в node.js , используя мангуста?

#node.js #express #mongoose

Вопрос:

поле модели, которое я хочу обновить

 address: {  shipping: {  street: { type: String, required: "please enter a street", trim: true },  city: { type: String, required: "please enter a city", trim: true },  pincode: {  type: Number,  required: "please enter a pincode",  trim: true,  },  },  billing: {  street: { type: String, required: "please enter a street", trim: true },  city: { type: String, required: "please enter a city", trim: true },  pincode: {  type: Number,  required: "please enter a pincode",  trim: true,  },  }, }, },  

Я использую мангуста и node.js. допустим, пользователь хочет обновить только 1 поле в адресе, например, предположим, что пользователь хочет обновить город доставки. как я могу это сделать, если в теле запроса я получаю только город доставки?

неудачный код, который я попробовал

 if(validator.isValid(address)) {  if(!Object.prototype.hasOwnProperty.call(updatedUserData, '$set')) updatedUserData['$set'] = {}   updatedUserData['$set']['address'] = address  } const upadateduser = await userModel.findOneAndUpdate({_id: userId}, updatedUserData, {new: true})  

этот код будет работать только в том случае, если я получу все поля адреса в теле запроса. но мое требование состоит в том, чтобы обработать изменение значения 1 в адресе.