Vue.js 制表器:实现自定义排序/分页/筛选/编辑行为的指南
我正在Vue.js驱动的Electron桌面应用程序中使用制表器。我的应用程序可以查询相当大的数据存储,并将结果显示在表格中 我想做的基本上与ajax模块相同,但不是通过ajax调用来获取新数据,而是要调用特定的API 我从分类开始。单击要排序的标题时,我希望使用排序参数调用自定义api,然后返回一个已排序的数据片段。在制表器排序模块api中,似乎没有“本机”方法来实现这一点 分页的处理方法也一样——只显示约100个结果,如果它们分页到下一页,我会调用API 实现这一目标的最佳方式是什么 我是否可以/应该构建自己的模块(从ajax模块中起草),或者直接与ajax模块集成Vue.js 制表器:实现自定义排序/分页/筛选/编辑行为的指南,vue.js,electron,tabulator,Vue.js,Electron,Tabulator,我正在Vue.js驱动的Electron桌面应用程序中使用制表器。我的应用程序可以查询相当大的数据存储,并将结果显示在表格中 我想做的基本上与ajax模块相同,但不是通过ajax调用来获取新数据,而是要调用特定的API 我从分类开始。单击要排序的标题时,我希望使用排序参数调用自定义api,然后返回一个已排序的数据片段。在制表器排序模块api中,似乎没有“本机”方法来实现这一点 分页的处理方法也一样——只显示约100个结果,如果它们分页到下一页,我会调用API 实现这一目标的最佳方式是什么 我是否
排序
和分页
?您可以使用ajaxRequestFunc回调来用自己的逻辑替换现有的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,
});
这正是我所做的。回答得好!