moment.js非常新。我有一个通知页面,加载后我想在有人评论的地方显示我的帖子。我只想查看今天有人发表评论的帖子。有人可以告诉我我出了什么问题吗?
我有以下代码:
我想显示所有在一天的本地开始发表评论的帖子。然后我想将此日期转换为UTC时间,因为mongoDB注释文档也保存在UTC时间。
// Generate the actual time
const todayForEvent = moment().startOf('day')
.utc().format();
console.log('todayForEvent', todayForEvent);
const posts = await Post.find({
// From this user...
$and: [
// Find normal posts that has comments (recent interactions)
{ _posted_by: userId },
{ comments: { $exists: true, $ne: [] } },
{ 'comments.created_date': { $gte: todayForEvent } }
]
})
console.log(posts);
这就是我如何用Mongoose保存评论的日期。我想做的就是将其保存在UTC时间
const CommentSchema = new Schema({
created_date: {
type: Date,
default: moment.utc().format()
}
});
const Comment = mongoose.model('Comment', CommentSchema);
module.exports = Comment;
我做了两个console.logs,还将添加数据库文档的屏幕截图
console.log(todayForEvent)
返回2019-01-02T06:00:00Z
console.log(posts)
返回一个空数组,因此没有找到匹配项
数据库屏幕快照:您可以在下面看到格式为2019-01-02 12:26:23.000