有没有办法让Joi.date只接受YYYY-MM-DD格式?我尝试用途:
Joi.date().format('YYYY-MM-DD')
但我得到一个错误
Property 'format' does not exist on type 'DateSchema'.ts(2339)
6ljaweal1#
如果您使用的是import而不是require(),则使用以下代码。
import
require()
import coreJoi from "joi"; import joiDate from "@joi/date"; const joi = coreJoi.extend(joiDate) as typeof coreJoi; const sampleEntry = joi.object({ fromDate: joi.date().format("YYYY-MM-DD").required(), toDate: joi.date().format("YYYY-MM-DD").required(), });
或者,您也可以编写imports,如下所示:
imports
import * as coreJoi from "joi"; import * as joiDate from "@joi/date"; const joi = coreJoi.extend(joiDate.default(coreJoi)) as typeof coreJoi;
kgsdhlau2#
请确保您安装了joi和@joi/date,并扩展了Joi,如下所示。
joi
@joi/date
Joi
const Joi = require('joi') .extend(require('@joi/date'));
那么你应该能够使用Joi.date().format('YYYY-MM-DD')没有任何错误。
7uhlpewt3#
你可以试试这个
import BaseJoi, { Extension, Root } from 'joi' import JoiDate from '@joi/date' const Joi = BaseJoi.extend(JoiDate as unknown as Extension) as Root
3条答案
按热度按时间6ljaweal1#
如果您使用的是
import
而不是require()
,则使用以下代码。或者,您也可以编写
imports
,如下所示:kgsdhlau2#
请确保您安装了
joi
和@joi/date
,并扩展了Joi
,如下所示。那么你应该能够使用
Joi.date().format('YYYY-MM-DD')
没有任何错误。7uhlpewt3#
你可以试试这个