我当前正在使用Tabulator这个库,并且我在文档中看到了一种方法setData()
,该方法允许我动态设置表数据,但是我想要实现的是在设置表数据之后然后,我可以基于此设置表分页。
内置的分页功能是通过将pagination:"local"
传递给选项对象或使用远程分页选项发送ajax调用来实现的。但是我的情况是我的客户端正在使用socket-io与服务器端进行通信,我不确定该如何实现。伪代码可能像这样:
const table = new Tabulator('#my-table', {
...
})
socketio.subscribe({
...,
callback: function(data) {
// get data from server side
table.setData(data)
// how to set pagination based on that?
// is there a method called setPagination() ?
table.setPagination(data)
}
})
希望我清楚地解释了我的困惑。
答案 0 :(得分:0)
http://tabulator.info/docs/4.6/page
您正在寻找table.setPage(3);。或任何页码。
答案 1 :(得分:0)
已经有一段时间了,但是我实际上发现在Tabulator中,无论何时加载数据,只要我在Tabulator的选项中设置了分页配置,就会在setData()
被调用后重新渲染该分页。即使setData()
被异步调用。
代码为:
const table = new Tabulator("#example-table", {
// set pagination mode in local
pagination: "local",
paginationSize: 5,
...
})
setTimeout(() => {
// simulate async data loaded
table.setData(data)
}, 5000)
上面的代码将显示以下效果: