如何从阵列中删除对象?我目前正在使用express / node和mongo / mongoose。我正在努力从数组中删除特定对象。这是我到目前为止所拥有的。
// Favorites object
{
_id: "12931402dnfervo34fjo3",
favorites: [
{id: 1, name: "test"}, // I want to delete this (at index 0)
{id: 2, name: "test2"},
{id: 3, name: "test3"},
]
}
// DELETE /user/{id}/favorites/{index}
router.delete('/favorites/:itemid', auth, (req, res) => {
Favorites.updateOne({
_id: req.session.user
}, {
$pull: {
"favorites": {
"id": req.params.itemid
}
}
}, {
safe: true,
multi: true
})
.then(response => res.status(200).json(response))
.catch(err => res.status(400).json({
message: err.message,
error: true
}))
});
此代码中缺少我什么?
答案 0 :(得分:0)
在示例文档中,argc[1][0]
数组中的*argv[1]
字段是整数,但是您正在使用id
进行查询,该字符串通常是字符串。
将其转换为整数应该有帮助。
favorites