我们的馆藏约有 1 亿份文档。我们使用nodejs和expressjs创建了一个简单的应用程序,并在mongo查询中使用了限制子句。对于目前的用户来说已经足够了。同时,我们正在尝试实现延迟加载,以便初始页面加载返回很少的文档,并且当用户滚动时我们希望加载更多文档。纠结从哪里开始以及如何继续实现。感谢您的建议。 我的 index.js 文件看起来像这样
router.get('/users', function(req, res) {
var db = req.db;
var users = db.get('users');
users.find(query, {limit: 10000}, function(e, docs){
res.render('users', {
title: 'Users',
'users': docs
});
});
});
我想删除限制并使用skip尝试实现此目的。 请发表您的建议
最佳答案
This应该有帮助。它使用 .find()
游标的 .skip
方法。我称之为分页而不是延迟加载。
var itemsPerPage = 10;
router.get('/users/:pageNum', function(req, res) {
var db = req.db;
var users = db.get('users');
users.find(query, {skip: (itemsPerPage * (pageNum-1)), limit: itemsPerPage},function(e, docs){
res.render('users', {
title: 'Users',
'users': docs
});
});
});
关于node.js - 使用nodejs和mongoDB作为后端数据进行延迟加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30253287/