У меня есть модель Mon goose:
const { Schema, model } = require('mongoose');
const schema = new Schema({
user: { type: Schema.Types.ObjectId, ref: 'User' },
message: { type: String }
});
module.exports = model('Comments', schema);
Как загрузить данные по частям из этой коллекции? Я хочу загрузить 5 документов с каждым запросом, затем с новым запросом следующие 5 и скоро. Что я делаю не так?
router.get('/', async (req, res) => {
try {
const userComments = await Comment.find({},{message:{ $slice: [5, 5] }})
.populate('user', ['avatar', 'firstName'])
.sort({ $natural: -1 });
Я пытался, но данные приходят полностью, а не на 5;
это не работает .find({},{$slice: [5, 5] });
, если я пытался:
const userComments = await Comment.find()
.populate('user', ['avatar', 'firstName'])
.sort({ $natural: -1 }).skip(5).limit(5);
но те же 5 документов возвращаются с каждым запросом; Часть моей коллекции 'комментарии':
{"_id":{"$oid":"5e26c87b590ed71b9897dbca"},
"user":{"$oid":"5e2571ba388ea01bcc26bc96"},
"message":"wwwwwww","__v":{"$numberInt":"0"}}
{"_id":{"$oid":"5e26c87b590ed71b9897dbca"},
"user":{"$oid":"5e2571ba388ea01bcc26bc96"},
"message":"qqqqq","__v":{"$numberInt":"0"}}
заранее спасибо!