Node.js Joi数组验证将覆盖基础错误。有没有办法克服这个问题?

Node.js Joi数组验证将覆盖基础错误。有没有办法克服这个问题?,node.js,joi,Node.js,Joi,我需要验证一组对象。每个对象可以是: { id; "some-id" } 或 我有以下代码: const Joi = require('Joi') const idSchema = Joi.object().keys({ user_id: Joi.string().required(), }); const mobileSchema = Joi.object().keys({ mobile_number: Joi.string().required().error(), })

我需要验证一组对象。每个对象可以是:

{
  id; "some-id"
}

我有以下代码:

const Joi = require('Joi')


const idSchema = Joi.object().keys({
  user_id: Joi.string().required(),
});

const mobileSchema = Joi.object().keys({
  mobile_number: Joi.string().required().error(),
});

const schema = Joi.object()
    .keys({
      members: Joi.array()
      .items(idSchema, mobileSchema)
      .required()
    })
    .required()


console.log(Joi.validate({
  members: [{ mobile_number: null }],
}, schema))
我希望它显示手机号码是必需的。它失败于:

{ error: 
   { ValidationError: child "members" fails because ["members" at position 0 does not match any of the allowed types]```
没有任何项与架构匹配的错误将覆盖基础错误

有办法吗

注意:我使用的是Joi 10.6,升级到新版本有一些限制

{ error: 
   { ValidationError: child "members" fails because ["members" at position 0 does not match any of the allowed types]```