Mongoose setOnInsert: использовать вычисляемое свойство внутри запроса

#javascript #node.js #mongodb #mongoose

#javascript #node.js #mongodb #mongoose

Вопрос:

Когда я использую setOnInsert в Mongoose, консоль возвращает мне, что я не могу использовать вычисляемое свойство внутри setOnInsert, как иллюстрирует следующее сообщение:

Ошибка синтаксиса: неожиданный токен [

  findOneAndUpdate:{
     "filter": hour[daySlot].time.timePlot, 
     "$setOnInsert": { hour[daySlot][time]:  update }, // fails to use computed properties
     upsert: true
 }
  

Моим параметром является dynamics, и мне нужно использовать вычисляемые свойства.

Любая подсказка была бы отличной, спасибо.

Ответ №1:

Вам нужно использовать квадратные скобки вокруг hour[daySlot][time]

 findOneAndUpdate:{
     "filter": hour[daySlot].time.timePlot, 
     "$setOnInsert": { [hour[daySlot][time]]:  update }, // fails to use computed properties
     upsert: true
 }
  

Комментарии:

1. Это синтаксис ES2015