我有一个transform function,用于修改toObject
的行为。我还使用timestamps: true
选项在文档上获取createdAt
和updatedAt
字段。我想将Mongoose的默认ISO字符串格式转换为时间戳。
transform函数在将文档转换为JS对象时创建下面指定的id
属性的范围内起作用。但是,日期转换不正确。也就是说,createdAt
继续是ISO字符串。
我已经搜索了一下,但似乎找不到关于正在发生的事情的任何答案。我想知道如何每次正确地变换日期。
options.toObject.transform = function (doc, obj) {
if (obj.createdAt) {
obj.createdAt = Date.parse(obj.createdAt);
}
obj.id = obj._id;
return obj;
};