Reactjs joi浏览器不允许使用空字符串

Reactjs joi浏览器不允许使用空字符串,reactjs,joi,Reactjs,Joi,看起来joi浏览器不允许有空字符串。这是我的模式: schema = { _id: Joi.string(), heading: Joi.string() .min(5) .max(50) .label("Heading") .required(), subHeading: Joi.string().max(50) }; 如果我将副标题字段留空(因为它不是必填字段),则会出现错误:“副标题”不允许为空” 验证中是否有允

看起来joi浏览器不允许有空字符串。这是我的模式:

schema = {
    _id: Joi.string(),
    heading: Joi.string()
      .min(5)
      .max(50)
      .label("Heading")
      .required(),
    subHeading: Joi.string().max(50)
  };
如果我将副标题字段留空(因为它不是必填字段),则会出现错误:“副标题”不允许为空”

验证中是否有允许空字符串的方法

我使用Node.js作为后端,我的模型如下所示:

const headingSchema = new mongoose.Schema({
  heading: {
    type: String,
    minlength: 5,
    maxlength: 50,
    required: true
  },
  subHeading: {
    type: String,
    minlength: 5,
    maxlength: 50
  }
});
因此,当我使用Postman并发送put请求时,我可以将副标题字段留空。这是joi浏览器的一个问题。

您试过了吗

schema = {
    _id: Joi.string(),
    heading: Joi.string()
      .min(5)
      .max(50)
      .label("Heading")
      .required(),
    subHeading: Joi.string().max(50).allow('')
};