-1

我有一个表示为字符串的枚举列表

export const constKeys = [
  'A',
  'B',
  'C',
  ...
];

我想使用 Joi 来验证 Immutable.js 映射是否具有来自数字的键constKeys和值。看起来我可以做类似的事情

const myMapValidator = Joi.object().keys({
    A: Joi.number(),
    B: Joi.number(),
    C: Joi.number(),
});

constKeys但是如果真的很长,这种方法将无法正常工作。有没有办法让 Joi 知道密钥必须来自constKeys并且值是数字?

4

1 回答 1

1

我想到了。您可以mapValueslodash使用

const myMapValidator = Joi.object().keys(mapValues(constKeys, () => Joi.number()))
于 2017-01-05T19:51:47.400 回答