我在一个Vue.js驱动的电子桌面应用程序中使用制表器。我的应用程序可以查询相当大的数据存储,并将结果显示在一个制表表中。
我想要做的基本上是与ajax模块相同,但我不想调用AJAX调用来获取新数据,而是调用一个特定的API。
我从分类开始。当单击要排序的标头时,我希望使用排序参数调用自定义api,然后返回排序后的数据片段。在制表器排序模块api中,似乎没有一种“原生”的方法来做到这一点。
同样处理分页-只显示100的结果,如果他们分页到下一页,我将进行一个API调用。
实现这一目标的最佳方法是什么?
我是否可以/应该构建我自己的模块(从ajax模块中起草),或者sort和paginate是否直接与ajax模块集成?
发布于 2020-05-08 17:42:28
您可以使用ajaxRequestFunc回调来用自己的逻辑替换现有的ajax请求机制。这方面的详细信息可以在加载数据、Ajax文档中找到。
下面的示例展示了一个新函数queryRealm,用于替换内置的ajax功能。
该函数将被传递给url、config和params对象,这些对象将包含排序、筛选和分页数据,并且应该返回使用表数据数组解析的承诺。
function queryRealm(url, config, params){
//url - the url of the request
//config - the ajaxConfig object
//params - the ajaxParams object
//return promise
return new Promise(function(resolve, reject){
//do some async data retrieval then pass the array of row data back into Tabulator
resolve(data);
//if there is an error call this function and pass the error message or object into it
reject();
});
}
var table = new Tabulator("#example-table", {
ajaxRequestFunc:queryRealm,
});https://stackoverflow.com/questions/61467210
复制相似问题