Я хочу добавить объект в массив. Но я хочу удалить дубликаты объектов.
вот mongoDB JSON
{
"_id" : ObjectId("5e61ef7e003307047c13329d"),
"subject" : "Grammar",
"deletedYn" : false,
"answerList" : [
{
"_id" : ObjectId("5e61ef8c003307047c1332a4"),
"sentence" : "hi gui, nice to meet you",
"answer" : [
{
"_id" : ObjectId("5e61f15cd863e104a8f66770"),
"word" : "nice",
"index" : 3
}
]
},
{
"_id" : ObjectId("5e61ef8c003307047c1332a5"),
"sentence" : "how to make a project.",
"answer" : []
}
],
"passageId" : "123",
}
Так что я хочу pu sh ответить в answerList. Ниже приведен код, который я создал, но он содержит дубликаты объектов.
const update = await PassageGrammar.updateOne(
{
_id: passageGrammarId,
answerList: { $elemMatch: { _id: sentenceId } },
},
{
$addToSet: {
'answerList.$.answer': {
word: answerList.word,
index: answerList.index,
},
},
},
);
, но он не работает (у него есть дубликат) так:
"answer" : [
{
"_id" : ObjectId("5e61f15cd863e104a8f66770"),
"word" : "nice",
"index" : 3
},
{
"_id" : ObjectId("5e61f15cd863e104a8f66770"),
"word" : "nice",
"index" : 3
}
]
Как я могу его изменить