как объединить две функции

#node.js #mongoose

Вопрос:

первая функция:

 getAllUserCars: (userEmail) => Car.aggregate([
    {
      $lookup:
            {
              from: 'users',
              localField: 'owner',
              foreignField: '_id',
              as: 'ownerCar'
            }
    },
    {
      $match: {
        'ownerCar.email': userEmail
      }
    }
  ])
 

вторая функция:

 getAllUserCarsByStatus: (userEmail, status) => Car.aggregate([
    {
      $lookup:
          {
            from: 'users',
            localField: 'owner',
            foreignField: '_id',
            as: 'ownerCar'
          }
    },
    {
      $match: {
        'ownerCar.email': userEmail,
        status
      }
    }
  ])
 

может быть,можно как-то пропустить этот параметр, если вы передаете пустой объект, это ошибка или пустая лента

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

1. Что такое «этот параметр»?

2. .статус .параметры.

3. getAllUserCarsByStatus: (userEmail, status = { $exists : true }) => Car.aggregate([

Ответ №1:

можете ли вы попробовать заменить условие соответствия в своем коде следующим кодом:

 $match: {
    $and: [{
            'ownerCar.email': userEmail,
        }, {
            'status': status
        }]
}