Я не могу соглашаться на признаки ответа find ()

export const destroy = async ({ params }, res, next) =>{
  var visitaVar

  await Visita.findById(params.id)
    .then(notFound(res))
    .then((visita) => {
      visitaVar = visita
      visita.remove()})
      .catch(next)

  await Alumno.find({'visitas.fecha': visitaVar.fecha})
  .then(alumno =>{
        console.log("Alumno =>" + alumno)
        console.log("Alumno visitas => " + alumno.visitas)
    for (let index = 0; index < alumno.visitas.length; index++) {
      const element = alumno.visitas[index];
        if(element == visitaVar.fecha)
          alumno.visitas.splice(index, 1);
    }
    return alumno.save()
  })
    .then(success(res, 204))
    .catch(next)
  }

Проблема состоит в том, что первый console.log ученика возвращает мне следующее

Alumno =>{ _id: 5c90e4b23c3b1d31c67c2582,
  nombre: 'Cristobal',
  email: 'cristobal@gmail.com',
  telefono: 987456123,
  tutor: 5c90c73e7c9d2d1ebf231487,
  visitas:
   [ { realizada: false,
       _id: 5c90e5243c3b1d31c67c2584,
       titulo: 'Otra visita5',
       fecha: 2019-03-25T09:00:00.000Z },
     { realizada: false,
       _id: 5c90e64173201e32a7877705,
       titulo: 'Otra visita7',
       fecha: 2019-03-26T09:00:00.000Z }],
  createdAt: 2019-03-19T12:46:42.958Z,
  updatedAt: 2019-03-19T19:20:20.503Z,
  __v: 7 }

И следующий console.log alumno.visitas я получаю следующее

Alumno visitas => undefined

Я попытался с остальными полями и не понимаю, из-за которого он возвращает меня undefined. Он, из-за которого я соглашаюсь плохо на признаки?.

-1
задан 19.03.2019, 21:37
2 ответа

ВїHas, протестированный подтверждать, есть ли у переменной visitaVar стоимость?

Я это tratarГ - чтобы делать без async/await, и harГ - в смесь callbacks и promises . А именно, консультация по поводу Vistia она harГ - в с callback (а именно, используя mГ©todo exec, так как он гарантирует тебе, что invocarГЎ, когда осуществится консультация); консультация по поводу Ученика ты можешь реализовывать уже с clГЎsico thenable mongoose (.then(...)) или с новым callback (два уровня callbacks не становятся совсем адом).

ГЃnimo и приветствие.

0
ответ дан 02.12.2019, 05:27

Я смог решить это меняя find на findOne, абзац она comparaciГіn дат внутри for плохой и его должно бы быть

if(element.fecha.getTime() === visitaVar.fecha.getTime())
0
ответ дан 02.12.2019, 05:27