找回密码
 立即注册

QQ登录

只需一步,快速开始

jiqimao 讲师达人认证
金牌服务用户   /  发表于:2016-4-18 14:41  /   查看:3694  /  回复:8
我们想要实时保存表格,因为表格很有可能很大,所以不可能用户a编辑一下就完整保存一次,最佳的策略是在打开表格后的所有操作都有增量的数据,最后再把原来的表格和增量数据整合,得到最终表格。请问在线表格编辑器或spreadjs可以做这个功能吗?谢谢

8 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-4-18 14:48:28
沙发
本帖最后由 dexteryao 于 2016-4-18 14:50 编辑

您可以设置以个定时器,定时使用activeSheet.getDirtyCells(); 获取用户更改过的数据,提交保存。然后使用activeSheet.clearPendingChanges(); 清除上次更改数据状态。
回复 使用道具 举报
jiqimao讲师达人认证
金牌服务用户   /  发表于:2016-4-18 15:03:25
板凳
是不是在线表格编辑的所有功能都是基于单元格的,所以我只要拿到改过的单元格,然后再加入元表格json就可以了?
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-4-18 15:51:17
地板
jiqimao 发表于 2016-4-18 15:03
是不是在线表格编辑的所有功能都是基于单元格的,所以我只要拿到改过的单元格,然后再加入元表格json就可以 ...

没有太明白您的意思。加入元表格json您指的是什么?
回复 使用道具 举报
jiqimao讲师达人认证
金牌服务用户   /  发表于:2016-4-18 16:17:04
5#
当我从数据库读出表格的json并打开时,整个表格就是数据库原来的json,也没有dirtycell。做了编辑之后,产生了dirtycell,这样我手上就有两份数据,一份是原来的json,一份是getDirtyCells得到的单元格数据。我是想问我是否可以通过原来的json+getDirtyCells得到的单元格数据来生成新的表格的json。我不想在编辑后取得整个新的json再写回数据库,而是用增量的方式自己生成新的json。
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-4-18 16:44:48
6#
如果你在数据库中保存的是spreadjs toJSON后的json,现在您想在后台通过增量的方式更改json是很麻烦的,这个需要您研究json格式,这种情况还是建议直接回传全部json。
如果您数据库保存的是单元格单独数据,那么您可以把dirtycell的数据组织后发回服务器,后台解析后处理保存。
回复 使用道具 举报
jiqimao讲师达人认证
金牌服务用户   /  发表于:2016-4-18 17:18:23
7#
spreadjs的数据有办法按照单元格单独保存吗?
回复 使用道具 举报
jiqimao讲师达人认证
金牌服务用户   /  发表于:2016-4-18 17:20:21
8#
听说你们也做了在线协作编辑功能,总不可能每次编辑都是全量数据传给其他人的吧,肯定是部分的增量信息传给其他人,然后增量信息再和整体表格数据整合。不然大于10m的表格可能根本就无法在线协作了,数据量太大了。
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-4-18 17:31:44
9#
协作编辑是同步的单元格数据,不是整个spread json 。 保存的时候也是要保持单独单元格的数据,而不能是整个json。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部