Javascript 无法同时实现KeystoneJS分页

Javascript 无法同时实现KeystoneJS分页,javascript,pagination,keystonejs,locals,Javascript,Pagination,Keystonejs,Locals,我正在尝试在keystone js和F中实现分页,具体操作如下: 模型 路线/视图 在Index.js中 在middleware.js中 样板 如果我在下一页发表评论,会出现分页按钮,但箭头上的ClickLong会将我带到博客/新闻项目的第二页 很明显,这里的某个地方发生了混乱。我怀疑这是因为我对当地人处理不当,但我似乎无法在keystone网站上找到任何关于当地人应该如何工作的深入解释 我最终希望对mongo集合应用不同的过滤器,并让它在一系列引导选项卡中运行,但我认为我需要首先整理好基础知识

我正在尝试在keystone js和F中实现分页,具体操作如下:

模型 路线/视图 在Index.js中 在middleware.js中 样板 如果我在下一页发表评论,会出现分页按钮,但箭头上的ClickLong会将我带到博客/新闻项目的第二页

很明显,这里的某个地方发生了混乱。我怀疑这是因为我对当地人处理不当,但我似乎无法在keystone网站上找到任何关于当地人应该如何工作的深入解释

我最终希望对mongo集合应用不同的过滤器,并让它在一系列引导选项卡中运行,但我认为我需要首先整理好基础知识

是否有人遇到过类似的情况并找到了解决方案?

接下来是一个在快速路线中运行的回调函数。你根本没有把它定义为你路线中的一个论点;问题的一部分还在于您试图同步加载数据,这在这里不起作用

使用view.init函数公开下一个函数,然后在将数据库中的信息加载到locals.data中后调用它

路线/视图


谢谢-我已经成功了-我在这方面的失误太令人震惊了!8-当你点击我跟踪到templates/views/helpers/index.js的分页时,它会重定向到博客-似乎我必须为每个分页实例编写一些特定的帮助程序,然后将它们与特定的分页匹配。我希望这不会是一个太大的问题,但因为现在是午夜,而且我从下午3点开始工作,所以必须等到明天。
var keystone = require('keystone');
var Types = keystone.Field.Types;

var Test = new keystone.List('Test', {
    map: {name: 'title'},
    label: 'Test',
    singular: 'Test',
    plural: 'Tests',
    autokey: {path: 'slug', from: 'title', unique: true} 
});

Test.add({
    description: {type: Types.Html, wysiwyg: true, height: 300 }
});

Test.register();
var keystone = require('keystone');
var Test = keystone.list('Test');
exports = module.exports = function(req, res) {

    var view = new keystone.View(req, res);
    var locals = res.locals;

    // Set locals
    locals.section = 'test';
    locals.data = {
        test: []
    };


    Test.paginate({
        page: req.query.page || 1,
        perPage: 2,
        maxPages: 5
    })
    .exec(function(err, results) {
        locals.data.test = results;
        next(err);
    });

    // Load All Terms
    view.query('test', keystone.list('Test').model.find()); 

    // Render view
    view.render('test');
}
app.all('/test', routes.views.test);
res.locals.navLinksFooter = [
    { label: 'Test', key: 'test', href: '/test' },
    .....
];
 <div class="row">
    <div class="col-xs-12">
        <span class="pull-right">
            {{>pagination}}
        </span>
    </div>
</div>

<div class="row row-content panel--outer panel--outer--trans">
    <div class="col-xs-12" id="panel--news-detail">
        {{# each test}}
            <p>{{{description}}}</p>
        {{/each}}
    </div>
</div>
locals.data = {
    test: []
};
var keystone = require('keystone');
var Test = keystone.list('Test');
exports = module.exports = function(req, res) {

    var view = new keystone.View(req, res);
    var locals = res.locals;

    // Set locals
    locals.section = 'test';
    locals.data = {
        test: []
    };


    view.on('init', function (next) {
        Test.paginate({
            page: req.query.page || 1,
            perPage: 2,
            maxPages: 5
        })
        .exec(function(err, results) {
            locals.data.test = results;
            next(err);
        });
    });

    // Load All Terms
    view.query('test', keystone.list('Test').model.find()); 

    // Render view
    view.render('test');
}