我正在使用joi验证对象的架构。对于objectid验证,joi具有单独的软件包joi-objectid。我正在使用它进行对象ID验证。但是最近,当我尝试将我的代码迁移到打字稿中时,joi抛出了一个错误,表明在joi上不存在objectid。由于它是在运行时添加的,因此我们无法获取参考。我该如何覆盖joi类型,以便它支持objectid函数。
答案 0 :(得分:2)
Joi已更新。在新版本中,joi-objectid
不起作用。 :(
您可以试试看。
答案 1 :(得分:1)
我必须将其添加到单个文件中。
import Joi from "joi";
import JoiObjectId from "joi-objectid";
const myJoiObjectId = JoiObjectId(Joi);
export const validateFixture = (input: object) => {
const schema = {
home: myJoiObjectId().required(),
away: myJoiObjectId().required(),
date: Joi.date(),
score: Joi.object(),
stadium: Joi.string().required(),
played: Joi.boolean()
};
return Joi.validate(input, schema);
};