我能够在节点中对函数表达式执行Joi Validations,如下所示
export var shippingInfo = Joi.object().keys({
expectedDeliveryDate:Joi.date().required(),
isRegisteredCompanyAddress:Joi.number().required(),
addressLine:Joi.string(),
country:Joi.string(),
state:Joi.string(),
city:Joi.string(),
zipcode:Joi.string()
});
但问题是,我最近开始研究打字稿。所以在这里,我的课程很少,我应该按照上面的函数表达式执行Joi验证。即我想验证下面的课程
export class ShippingInfo {
expectedDeliveryDate: Date,
isRegisteredCompanyAddress: number,
addressLine:string,
country:string,
state:string,
city:string,
zipcode:string
}
我应该如何对上述课程进行验证。应该对班级或对象级别进行验证吗?如何?
答案 0 :(得分:1)
您可以将此项目用作参考。 tsdv-joi
// ...imports...
registerJoi(Joi);
class MyClass {
@Max(5)
@Min(2)
@StringSchema
public myProperty : string;
}
let instance = new MyClass();
instance.myProperty = "a";
const validator = new Validator();
var result = validator.validate(instance);
console.log(result); // outputs the Joi returned value
如果您需要npm包,那么您可以使用此包装器gearworks