У меня есть сценарий, в котором мне нужно проверить номер НДС с другим регулярным выражением в зависимости от страны. Итак, когда поле language
равно SE
, я хочу использовать это регулярное выражение /^\d{6}-\d{4}$/
в поле company.vatNo
, но когда поле language
равно NO
, я хочу использовать это /^\d{9}(MVA)?$/
. вообще работать. Кто-нибудь знает, как я могу этого добиться?
Вот мой маршрут, где я проверяю:
module.exports = {
method: 'POST',
path: '/signup/{partner}',
handler: createPartner,
config: {
validate: {
payload: {
language: Joi.string().allow(config.supportedLanguages).required(),
company: {
vatNo: {
Joi
.when('language', {
is: 'SE',
then: Joi.string().regex(/^\d{6}-\d{4}$/).required()
})
.when('language', {
is: 'NO',
then: Joi.string().regex(/^\d{9}(MVA)?$/).required()
})
.when('language', {
is: 'FI',
then: Joi.string().regex(/^\d{7}-\d{1}$/).required()
})
}
}
}
}
}
Спасибо
switch
для установки значения регулярного выражения в зависимости от языка? - person Jared Smith   schedule 07.12.2016