Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在setup()中具有返回值的Joi验证器扩展不调用validate()_Node.js_Joi_Hapi - Fatal编程技术网

Node.js 在setup()中具有返回值的Joi验证器扩展不调用validate()

Node.js 在setup()中具有返回值的Joi验证器扩展不调用validate(),node.js,joi,hapi,Node.js,Joi,Hapi,我创建了一个扩展,它实现了setup()和validate()。我希望这两个方法都能被调用,它们都是。但是如果我的setup()方法返回一个值,validate()将被完全跳过,并且永远不会调用 我希望能够让我的setup()返回一个值,并且仍然能够在validate()中进行验证 const-WebhookUrlExtension=(joi)=>joi.extension({ base:joi.string(), 名称:“字符串”, 规则:[ { 名称:“webhookUrl”, 验证(参数、

我创建了一个扩展,它实现了
setup()
validate()
。我希望这两个方法都能被调用,它们都是。但是如果我的
setup()
方法返回一个值,
validate()
将被完全跳过,并且永远不会调用

我希望能够让我的
setup()
返回一个值,并且仍然能够在
validate()
中进行验证

const-WebhookUrlExtension=(joi)=>joi.extension({
base:joi.string(),
名称:“字符串”,
规则:[
{
名称:“webhookUrl”,
验证(参数、值、状态、选项){
console.log('VALIDATE')//未触发:(
返回值;
},
参数:{
选项:joi.object({
scheme:joi.array().items(joi.string()).optional()
})
},
设置(参数){
console.log('SETUP')//执行得很好
常量正则表达式=/^.+:\/\/。+/;
常数={
scheme:Hoek.reach(参数'options.scheme',{default:['https']})
};
return Joi.string().uri(uriOpts.regex(regex);//如果删除此return语句,则会运行validate
}
}
]
});