где оба их значения - строка с более чем двумя символами. Таким образом, приведенные выше примеры могут быть сведены в единый действительный объект.
я есть объект с именами ключей, которые я не могу знать - они созданы пользователем. Однако я знаю, какие значения они (ключи) будут хранить, и они (значения) будут строками ISO. Как мне проверить эти значения? А также,по выборуКак проверить ключи неизвестного объекта, т.е.
key: Joi.string().min(2).max(25)
То, что я уже пробовал, было основано на документации Joi API:
Другое преимущество использования Joi.object ([схема]) вместо простого объекта JS заключается в том, что> вы можете установить любые параметры для объекта, такие какразрешить неизвестные ключиНапример:
const schema = Joi.object({ arg: Joi.string().valid('firstname', 'lastname', 'title', 'company', 'jobtitle'), value: Joi.string(), }).pattern(/firstname|lastname/, Joi.string().min(2));
Из примера я понял, чтоarg
ключ представляетJoi.object()
«skey
, а такжеvalue
представляет этоvalue
.
Мой пример:
campaign: Joi.object({
arg: Joi.string().valid( 'unknown' ),
value: Joi.date().iso(),
}).pattern( /unknown/, Joi.string().min(2).max(25) )
Мой вклад;
campaign: { g_ad_adwords: "2017-01-19T11:33:26.205Z" }
Моя ошибка:
"Кампания" не удалась, потому что ["g_ad_adwords" не разрешен]