Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/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
Javascript 如何使用Joi验证实现正确的引用逻辑?_Javascript_Node.js_Express_Joi - Fatal编程技术网

Javascript 如何使用Joi验证实现正确的引用逻辑?

Javascript 如何使用Joi验证实现正确的引用逻辑?,javascript,node.js,express,joi,Javascript,Node.js,Express,Joi,我正在尝试创建一个简单的模式,该模式将检查以确保正确输入数字范围。逻辑是开始必须小于结束,结束必须大于开始 这是我的模式 const start = Joi.number().less(Joi.ref('end')) const end = Joi.number().greater(Joi.ref('start')) //age Range object const ageRange = Joi.object().keys({ start: start, end: end, }) 编译

我正在尝试创建一个简单的模式,该模式将检查以确保正确输入数字范围。逻辑是开始必须小于结束结束必须大于开始

这是我的模式

const start = Joi.number().less(Joi.ref('end'))
const end = Joi.number().greater(Joi.ref('start'))
//age Range object
const ageRange = Joi.object().keys({
  start: start,
  end: end,
})
编译代码时出现的错误:
错误:添加到组端的项创建了依赖项错误

我尝试过改变逻辑,但我不确定还有什么其他结构可以工作。我知道这可能是参考逻辑的问题,因此任何对此的替代建议都将不胜感激。

开始必须小于结束,结束必须大于开始我认为您可以只检查其中一个,另一个自动为真。不确定数学中的术语是什么

像这样的东西应该有用

const模式={
开始:Joi.date().iso().required(),
结束:Joi.date().iso().greater(Joi.ref('start')).required()
};

设ageRange=Joi.object().keys(模式)开始必须小于结束,结束必须大于开始您可以只检查其中一个。否?另外,当您在同一schemaYup中引用时,我认为Joi.ref()可以工作。我只需要比较结束值就可以开始了。谢谢你。