Проверка массива объектов для обязательных полей, oneOf () - похоже, не работает - PullRequest
0 голосов
/ 30 сентября 2019

Привет! Я использую экспресс-валидатор для проверки массива объектов, но кажется, что что-то не работает так, как должно быть, я применяю валидацию для следующего массива

    "additionalEmployees": [ 
            { 
              "employeeID": null,
              "employeeFullName": "John Doe",
              "isDeleted": false
            },{ 
              "employeeID": "12",
              "employeeFullName": "jane Doe",
              "isDeleted": true } 
    ]

в этом массиве. из этих объектов являются допустимыми объектами, но я получил ошибку проверки, я использую следующий код для проверки

    oneOf( [ 
            check('additionalEmployees[*].isDeleted').equals('false'),
           check('additionalEmployees[*].employeeID').exists({checkNull: true }),
     ], '1220', )

, где 1220 - код ошибки, и я считаю, что проблема заключается в том, что эта проверка выбирает employeeID =null сначалаобъект и isDeleted= true из второго объекта, а затем делает недействительным тело запроса. единственное условие, при котором валидация завершается неудачей, это

    employeeID = null & isDeleted = true
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...