Anahtar adları olan bir nesnem var, bilmem mümkün değil - kullanıcı tarafından oluşturuluyor. Ancak, hangi değerlerin (anahtarlar) saklanacağını ve bunların (değerler) ISO dizileri olacağını biliyordum. Bu değerleri nasıl doğrularım?Joi nesne doğrulama: Bilinmeyen anahtar adları olan değerleri nasıl doğrularsınız?
key: Joi.string().min(2).max(25)
Zaten -Joi API docs dayanıyordu çalıştı gelmiş Ne: Ben örnekten anlaşıldığı Ne
Another benefits of using Joi.object([schema]) instead of a plain JS object is >that you can set any options on the object like allowing unknown keys, e.g:
const schema = Joi.object({ arg: Joi.string().valid('firstname', 'lastname', 'title', 'company', 'jobtitle'), value: Joi.string(), }).pattern(/firstname|lastname/, Joi.string().min(2));
olmasıdır Ve isteğe, nasıl yani _uknown nesnenin anahtarlarını, doğrularım arg
anahtar, Joi.object()
öğesinin key
ve value
öğesinin value
olduğunu gösterir.
My örnek:
campaign: Joi.object({
arg: Joi.string().valid('unknown'),
value: Joi.date().iso(),
}).pattern(/unknown/, Joi.string().min(2).max(25))
My girişi;
campaign: { g_ad_adwords: "2017-01-19T11:33:26.205Z" }
Benim hatası:
"campaign" fails because ["g_ad_adwords" is not allowed]