저는 Mongoose를 사용하고 있으며 클라이언트에 JSON 응답을 보내기 전에 Mongoose 인스턴스에서 _id
속성을 제거하려고합니다.언더 코어의 몽구스 개체 복제 및 속성 삭제가 작동하지 않습니까?
예 :
var ui = _.clone(userInvite);
delete ui["_id"];
console.log(JSON.stringify(ui)); //still has "_id" property, why?
이전 작동하지 않았다.
그러나, 내가 할 경우 :
var ui = JSON.parse(JSON.stringify(userInvite)); //poor man's clone
delete ui["_id"];
console.log(JSON.stringify(ui)); //"_id" is gone! it works!
이해하지 않는 이유 밑줄이 작동하지 않습니다 사용하여 복제 된 개체에 대한 delete
를 호출,하지만 난 해키 JSON.string/JSON.parse을 할 경우, 그것은 작동합니다.
이 동작에 대한 의견이 있으십니까?
아마를 보내지와 속성으로보다는 게터/세터로'_id' 구현된다 몽구스에 변환을 적용 . 'Object.getOwnPropertyDescriptor (userInvite, "_id"). get'을 시도하십시오 – Raynos
개체를 복제하는 모든 속성을 수정하는 것도 불가능합니다. – Hill