无法拼接mongoose文件密钥

时间:2017-12-27 22:22:38

标签: node.js mongodb express mongoose

我试图从一个看起来像这样的猫鼬文档中删除Nodejs和Express的关键字:

return Promise.all(conversations.map(conversation => {
    return helperGetConvo(...).then().catch();
}

以下是我的更新查询中似乎存在问题的部分(如果有很多关键字,它不能正确删除关键字,尽管它只使用了很少的关键字而工作了几次):

{
name: "Instagram",
description: "Image sharing website",
keywords: [{name:"Image", value: 1}, {name:"sharing", value: 1}, {name:"website"}, {name:"Instagram", value:5}, {name:"application", value: 2}]
}

1 个答案:

答案 0 :(得分:0)

Splice不适用于对象数组。有关可选解决方案,请参阅Remove Object from Array using JavaScript。否则,我会建议一种不同的方法,为什么不根据您的需要过滤关键字,如:

doc.keywords = doc.keywords.filter((key) => key.value === 1);