有人能指出我使用dgrid的dgrid分页扩展的例子吗?这可以是参考链接或您键入的简单示例。我在我的代码中定义了它,将它与OnDemandGrid一起使用,它被添加到我的自定义网格的declare mixin中。我看到页面导航的箭头,我看到页面大小设置菜单,但我对rowsPerPage:3的规范什么也没做。我仍然看到我的7个样本记录。
我正在使用一个修改后的Cache(数据对象存储)来为我的dgrid包装一个JsonRest和Memory存储。
答案 0 :(得分:3)
我认为问题是你不能使用OnDemandGrid
分页,因为OnDemandGrid
拥有自己的内部虚拟分页逻辑。来自dgrid extensions wiki:
与OnDemandList和OnDemandGrid模块相比, 分页扩展实现了经典的离散分页控件。它 在给定时间显示一定数量的结果,并提供一个 页脚区域,带有控件以在页面之间切换。
注意:分页扩展应混合到List或Grid中,而不是 一个OnDemand构造函数,因为它们包含它们自己的构造函数 虚拟滚动逻辑。在内部,分页继承了同样的东西 _StoreMixin模块由OnDemand原型继承,用于与dojo / store的通用集成。
您要做的是将Pagination
混合到普通Grid
中。 Pagination Mixin包含您感兴趣的属性,例如行数。 Paginator扩展程序处理与提供的商店的对话,以检索和呈现要显示的行集。像这样的类的define
可能是这样的:
define(['dojo/_base/declare','dgrid/Grid', 'dgrid/extensions/Pagination'],function(declare,Grid,Pagination){
return declare('mine.PaginatedGrid',[Grid,Pagination],{
//various default you can set
pagingLinks: false,
pagingTextBox: true,
firstLastArrows: true,
minRowsPerPage: 5,
rowsPerPage: 5,
pageSizeOptions: [5, 10, 15, 25, 50, 100]
});
});
答案 1 :(得分:0)
DGrid及其扩展的最佳示例可以在DGrid项目的测试文件夹中找到。他们可以在这里找到:
具体而言,可以找到分页测试:
运行它们: