"Export all data as csv" 上的事件触发?
Event trigger on "Export all data as csv".?
我试过Whosebug中与问题相关的答案。没有成功。
我正在尝试在 UI-GRID 中进行服务器端分页。刚刚点击将所有数据导出为 csv。
因为,我的数据很大。加载时,我只显示 25 个数据。当页面更改查询将被传递时,它 returns 来自 db 的下一个 25 个值。
是否有任何事件会触发将所有数据导出为 csv?所以,我可以点击控制器并检索实际存在的值。
分页示例代码:
gridApi.pagination.on.paginationChanged($scope, function(newPage, pageSize) {
paginationOptions.pageNumber = newPage;
paginationOptions.pageSize = pageSize;
CommonService.getStudents("../login/loadValues",
paginationOptions)
.then(function(data) {
$scope.ListOption.data = data;
$scope.ListOption.totalItems = data[0].count;
});
});
同样,我需要在将所有数据导出为 CSV 时触发事件。 ??
如有任何建议,我们将不胜感激。
部分找到答案。
$scope.ListOption.exporterAllDataFn=function(){
//service call
CommonService.getStudents("../login/loadValues",
paginationOptions)
.then(function(data) {
$scope.ListOption.data = data;
$scope.ListOption.totalItems = data[0].count;
});
}
当我点击 "export all data as csv" 时,函数被调用了 2 次。
注意:这只发生在第一次页面加载时。第二次点击时,函数被调用一次。
谁能解释一下?
一旦你得到一切,将外部sorting/pagination更改为false
exporterAllDataFn: () => {
filter.pageSize = this.gridOptions.totalItems;
filter.pageNumber = 1;
return getStuff()
.then((allData: any) => {
this.gridApi.grid.options.useExternalPagination = false;
this.gridApi.grid.options.useExternalSorting = false;
this.gridOptions.data = allData.items;
this.gridOptions.totalItems = allData.totalNumber;
return allData.items;
});
},
this.gridApi.core.on.sortChanged(this.$scope, (grid, sortColumns) => {
if (this.gridApi.grid.options.useExternalSorting) {
this.sortDirection = sortColumns[0] ? sortColumns[0].sort.direction === "asc" ? 0 : 1 : 0;
this.sortColumn = sortColumns[0] ? sortColumns[0].colDef.databaseField : null;
getStuff()
}
});
this.gridApi.pagination.on.paginationChanged(this.$scope, (newPage, pageSize) => {
if (this.gridApi.grid.options.useExternalPagination) {
this.paginationOptions.pageNumber = newPage;
this.paginationOptions.pageSize = pageSize;
getStuff()
}
});
我试过Whosebug中与问题相关的答案。没有成功。
我正在尝试在 UI-GRID 中进行服务器端分页。刚刚点击将所有数据导出为 csv。
因为,我的数据很大。加载时,我只显示 25 个数据。当页面更改查询将被传递时,它 returns 来自 db 的下一个 25 个值。
是否有任何事件会触发将所有数据导出为 csv?所以,我可以点击控制器并检索实际存在的值。
分页示例代码:
gridApi.pagination.on.paginationChanged($scope, function(newPage, pageSize) {
paginationOptions.pageNumber = newPage;
paginationOptions.pageSize = pageSize;
CommonService.getStudents("../login/loadValues",
paginationOptions)
.then(function(data) {
$scope.ListOption.data = data;
$scope.ListOption.totalItems = data[0].count;
});
});
同样,我需要在将所有数据导出为 CSV 时触发事件。 ??
如有任何建议,我们将不胜感激。
部分找到答案。
$scope.ListOption.exporterAllDataFn=function(){
//service call
CommonService.getStudents("../login/loadValues",
paginationOptions)
.then(function(data) {
$scope.ListOption.data = data;
$scope.ListOption.totalItems = data[0].count;
});
}
当我点击 "export all data as csv" 时,函数被调用了 2 次。
注意:这只发生在第一次页面加载时。第二次点击时,函数被调用一次。
谁能解释一下?
一旦你得到一切,将外部sorting/pagination更改为false
exporterAllDataFn: () => {
filter.pageSize = this.gridOptions.totalItems;
filter.pageNumber = 1;
return getStuff()
.then((allData: any) => {
this.gridApi.grid.options.useExternalPagination = false;
this.gridApi.grid.options.useExternalSorting = false;
this.gridOptions.data = allData.items;
this.gridOptions.totalItems = allData.totalNumber;
return allData.items;
});
},
this.gridApi.core.on.sortChanged(this.$scope, (grid, sortColumns) => {
if (this.gridApi.grid.options.useExternalSorting) {
this.sortDirection = sortColumns[0] ? sortColumns[0].sort.direction === "asc" ? 0 : 1 : 0;
this.sortColumn = sortColumns[0] ? sortColumns[0].colDef.databaseField : null;
getStuff()
}
});
this.gridApi.pagination.on.paginationChanged(this.$scope, (newPage, pageSize) => {
if (this.gridApi.grid.options.useExternalPagination) {
this.paginationOptions.pageNumber = newPage;
this.paginationOptions.pageSize = pageSize;
getStuff()
}
});