Mongoose kullanıyorum ve istemciye JSON yanıtını göndermeden önce Mongoose örneğimden _id
özelliğini kaldırmak istiyorum.Underscore'un Mongoose Nesnelerini Klonlaması ve Özellikleri Silme Çalışmıyor mu?
Örnek:
var ui = _.clone(userInvite);
delete ui["_id"];
console.log(JSON.stringify(ui)); //still has "_id" property, why?
önceki çalışmadı.
Ancak, ben yaparsam:
var ui = JSON.parse(JSON.stringify(userInvite)); //poor man's clone
delete ui["_id"];
console.log(JSON.stringify(ui)); //"_id" is gone! it works!
anlamıyorum neden Underscore çalışmıyor kullanarak klonlanmış nesne üzerinde delete
arayarak, ama hacky JSON.string/JSON.parse yaparsanız, işe yarıyor.
Bu davranış hakkında herhangi bir düşünce var mı?
Muhtemelen sizi trolling ve özellik olarak ziyade, bir alıcı/setter olarak '_id' uyguluyor firavun faresi için dönüşümü uygular . 'Object.getOwnPropertyDescriptor' (userInvite, "_id") 'ı deneyin. '' – Raynos
Klonlama mongoose nesnesinin özelliklerini değiştirmek de imkansızdır. – Hill