如何使用mongoose创建load older或load more调用

如何使用mongoose创建load older或load more调用,mongoose,Mongoose,你们可以把它标记为重复的问题,但我不知道怎么说我不想说的,所以很难找到答案 如果我有一个像 var mongoose = require('mongoose'); var Schema = mongoose.Schema; var messageSchema = new Schema({ created_at: {type: Date, default: Date.now}, sender: {type: Schema.Types.ObjectId}, content:

你们可以把它标记为重复的问题,但我不知道怎么说我不想说的,所以很难找到答案

如果我有一个像

var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var messageSchema = new Schema({
    created_at: {type: Date, default: Date.now},
    sender: {type: Schema.Types.ObjectId},
    content: String
});
module.exports = mongoose.model('Message', messageSchema);
因此,一段时间后将有许多消息注册

现在我显示它们,但一行只显示10个

var Message = require('../models/message');
Message.find().sort('-created_at').limit(10).exec(function(err, messages) {
    var last = messages[messages.length - 1]._id
});
我放置了一个按钮“Load older”,该按钮应该从“last”开始显示前10条消息,但我不知道怎么做


你知道怎么做吗?

我从一开始就错了。我认为使用最后找到的文档的_id是解决方案,但属性“created_at”实际上是关键

加载旧邮件很容易

var last = new Date(messages[messages.length - 1].created_at);
Message.find().where('created_at').lt(last).exec()
由于“created_at”注册为日期类型,因此可以进行此类查询