You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为JOI库中的valid()方法自定义验证提示消息?

如何为Joi的valid()方法自定义提示消息?

你只需要在messages对象中添加any.only对应的自定义提示即可,因为valid()方法验证不通过时触发的错误码是any.only。

修改后的代码示例:

Joi.object({
  subscription: Joi.string()
    .valid('starter', 'pro', 'business')
    .required()
    .messages({
      'string.base': `{{#label}} 应该是字符串类型`,
      'string.empty': `{{#label}} 不能为空`,
      'any.required': `缺少字段 {{#label}}`,
      'any.only': `{{#label}} 只能是 starter、pro 或 business 中的一个`
    }),
})

当subscription的值不在指定列表中时,就会返回你自定义的提示文本,而非默认提示。

内容的提问来源于stack exchange,提问作者Mykola Berezhniuk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 15:15:55