Express Validator 5.3 - обязательный параметр, если второй параметр включен в данный массив - PullRequest
0 голосов
/ 01 ноября 2018

Я искал валидатор, который требует определенного параметра, если есть параметр, равный определенному значению. Может быть, что-то вроде этого:

const allowedsMethods = ['A', 'B'];

...

check('method').custom(method => allowedMethods.includes(method))
check('paramA').requireIfContains('method', ['A'])
check('paramB').requireIfContains('method', ['A'])
check('paramAorB').requireIfContains('method', ['A', 'B'])
  • Если method содержится внутри ['A'], то потребуется свойство paramA.
  • Если method содержится внутри ['B'], то потребуется свойство paramA.
  • Если method содержится внутри ['A', 'B'], то потребуется свойство paramA.

Я просматривал доступные на данный момент валидаторы и не нашел что-то, что соответствовало бы моим потребностям. Я пытался выяснить, как мне этого добиться, используя собственный валидатор, но я не смог найти никакого решения.

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