【发布时间】:2020-05-25 14:08:09
【问题描述】:
正如标题中所说,我无法让 joi 验证来处理我的有效负载中的值,其名称中带有连字符。该值称为“搜索类型”。我的验证看起来像这样
options: {
validate: {
payload: joi.object({
value1: joi.string().required(),
value2: joi.string().required(),
search-type: joi.string().required()
}),
failAction: (request, h, err) => {
return h.redirect('/search').takeover()
}
}
}
我试过像这样把名字放在方括号里
options: {
validate: {
payload: joi.object({
value1: joi.string().required(),
value2: joi.string().required(),
searchType:['search-type'] joi.string().required()
}),
failAction: (request, h, err) => {
return h.redirect('/search').takeover()
}
}
}
但是“joi”。在它在 linting 中标记并说“joi”之后。是一个意外的令牌?
【问题讨论】:
-
试试 searchType: .["search-type"]
-
谢谢,但仍然说“joi”。是方括号后的意外标记
-
只需使用“搜索类型”而不是搜索类型。我在hapi.dev/family/joi/tester 进行了测试