2

确切的错误:

    "value": "2019-10-09T10:36:40.791Z",
    "property": "createdAt",
    "children": [],
    "constraints": {
      "isDateString": "createdAt must be a ISOString"
    }

类中的字段:

    @prop({ default: new Date(Date.now()) })
    @IsDefined()
    @IsDateString()
    createdAt: Date;

获取来自数据库的文档:

 const order = await this.order.findOne({
      _id: body._id,
      clientId: user.clientId,
    });

调用验证器:

      let orderData = order.toJSON();
      let finalOrder = plainToClass(FinishedOrder, orderData);
      let validation = await validateOrReject(finalOrder);

我也试过打电话order.toObject(),但效果相同。

4

1 回答 1

1

错误中记录的不是对象本身,事实证明猫鼬会将日期字符串转换为日期对象。如果值是日期,我最终对该属性的检查是可选的。

于 2019-10-11T08:54:00.073 回答