我在使用Data Table(v1.10.6)保存功能时遇到问题。
使用以下参数,似乎保存和恢复状态功能正常工作,但在一段随机时间后,状态将被默认表格布局覆盖。这个问题似乎只发生在晚上更换表格后,然后在早上检查网站,发现一切都重置了。数据表通常在一天中保持表格布局,但是有些边缘发生表格布局在白天随机重置。数据表是唯一设置本地存储的位置。
理想的行为是数据表的状态,重新排序或添加列,在用户更改表时会无限期地保持不变。
stateSave: true,
stateDuration : 0,
stateSaveCallback: function(settings, data) {
localStorage.setItem('DataTables_Asset_List', JSON.stringify(data));
},
stateLoadCallback: function(settings) {
return JSON.parse(localStorage.getItem('DataTables_Asset_List'));
}
使用的插件:
感谢任何帮助,谢谢!
答案 0 :(得分:0)
您正在寻找的是 stateDuration 选项: https://datatables.net/reference/option/stateDuration
如果表保存到localStorage,则此选项定义在返回默认状态之前localStorage中保存状态的使用时间。 stateDuration的默认值为 7200 (或2小时)。
例如,如果用户在没有访问页面/重新加载表格的情况下走了2个小时,那么只需要刷新"刷新"倒数计时器,如果你愿意,那么表格将加载其默认设置。无论localStorage目前是什么。这解释了为什么变化似乎不会在一夜之间持续存在。
总之,增加stateDuration选项以增加表的持久性持续时间。
我希望有所帮助。