首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对象的嵌套数组的Joi错误消息

对象的嵌套数组的Joi错误消息
EN

Stack Overflow用户
提问于 2019-09-13 16:55:15
回答 1查看 638关注 0票数 0

我有来自客户端的用户输入,我正在使用Joi进行后端验证。

代码语言:javascript
复制
const Joi = require("joi")

const schema = Joi.array().items(
    Joi.object().required().keys({
      name: 'filter_list',
      value: Joi.array().items(

        Joi.object().required().keys({
          id: 'popular_filters',
          value: Joi.array().required().items(

            Joi.object().required().keys({
              id: Joi.string().required(),
              name: Joi.string().required(),
              items: Joi.array().items(

                Joi.object().keys({
                  id: Joi.string().required(),
                  name: Joi.string().required()
                })

              )
            })

          )
        })
      )
    })
);

// Return result.
const result = Joi.validate([
    {
        name: 'filter_list',
        value: [{
          id: 'popular_filters',
          value: [{
            id: '1',
            name: 'Gym',
            items: [{
              id: 1, // bad error msg
              name: 'x'
            }]
          }]
        }]
      }
], schema);

console.log('error: ', result.error);

演示:https://runkit.com/eldyvoon/5d7b59184bd7b300144a2730

我得到的错误是

代码语言:javascript
复制
Error: "value" at position 0 fails because [child "value" fails because ["value" at position 0 fails because [child "value" fails because ["value" at position 0 fails because [child "items" fails because ["items" at position 0 fails because [child "id" fails because ["id" must be a string]]]]]]]]

乔伊写的。我不希望提供自定义的error msg,但是Joi应该给我一些类似id should be in string not number的东西

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-13 17:14:33

在定义模式时,只需在链中提供错误函数即可。

代码语言:javascript
复制
Joi.object().keys({
  id: Joi.string().required().error(new Error('id should be in string not number')),
  name: Joi.string().required()
})
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57920353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档