我使用下面的代码将kendo ui网格存储到localstorage,然后将其检索回来,一切正常。
function saveState(e){
var grid = angular.element('#booking-grid').data("kendoGrid");
console.log(kendo.stringify(grid.getOptions()));
localStorage["kendo-grid-options"] = kendo.stringify(grid.getOptions());
}
function restoreState(e){
var options = localStorage["kendo-grid-options"];
if (options) {
var grid = angular.element('#booking-grid').data("kendoGrid");
grid.setOptions(JSON.parse(options));
}
}
现在我们希望将此状态存储在某些持久性存储(如DB)中,当用户再次登录时,我们希望向他显示他之前从DB存储的状态。 我意识到生成的json字符串也包含网格数据,并且这些数据会发生变化,因为数据刷新每30分钟发生一次。这导致向最终用户显示陈旧数据。
我们希望在没有数据的情况下存储网格的当前结构状态。有没有办法可以实现相同的
答案 0 :(得分:0)
在getOptions()之后,但在保存之前,请清除数据源:
function saveState(e){
var grid = angular.element('#booking-grid').data("kendoGrid");
var gridOptions = grid.getOptions();
delete gridOptions.dataSource.data;
console.log(kendo.stringify(gridOptions));
localStorage["kendo-grid-options"] = kendo.stringify(gridOptions);
}