找回密码
 立即注册

QQ登录

只需一步,快速开始

鸳鸯配2024

金牌服务用户

30

主题

163

帖子

413

积分

金牌服务用户

积分
413
鸳鸯配2024
金牌服务用户   /  发表于:2024-11-5 09:58  /   查看:216  /  回复:18
假如说我每隔5秒设置保存一次。那在编辑的过程中,当前正在编辑单元格的数据是保存不到的。

18 个回复

倒序浏览
Wilson.Zhang
超级版主   /  发表于:2024-11-5 12:20:52
沙发
您好!单就您描述的问题,可以在保存后检查下sheet中是否还有脏数据单元格,如果有再保存一次,或者是否可以等到下一个五秒同步保存。

请问下您的保存逻辑是怎样的?是否有前后端交互,还是只是保存整个文件的ssjson或其他文件类型?
回复 使用道具 举报
鸳鸯配2024
金牌服务用户   /  发表于:2024-11-5 13:38:33
板凳
Wilson.Zhang 发表于 2024-11-5 12:20
您好!单就您描述的问题,可以在保存后检查下sheet中是否还有脏数据单元格,如果有再保存一次,或者是否可 ...

不是脏数据。就是我正在编辑单元格的时候,就自动保存,当前的单元格数据会丢失。
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-11-5 15:24:10
地板
鸳鸯配2024 发表于 2024-11-5 13:38
不是脏数据。就是我正在编辑单元格的时候,就自动保存,当前的单元格数据会丢失。

您的意思是在编辑某个单元格时,五秒自动保存执行了,但是未能保存当前被编辑的单元格的数据,同时眼前当前单元格中也没有数据吗?

请问下您的保存逻辑是怎样的?
回复 使用道具 举报
鸳鸯配2024
金牌服务用户   /  发表于:2024-11-5 15:33:08
5#
Wilson.Zhang 发表于 2024-11-5 15:24
您的意思是在编辑某个单元格时,五秒自动保存执行了,但是未能保存当前被编辑的单元格的数据,同时眼前当 ...

对。保存的逻辑就是定时保存。

就是在保存的时候,正在输入,大概率的就会出现这个问题。当前输入的单元格数据丢失。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-11-5 15:59:24
6#
定时保存的实现方式是什么?导出为json或sjs吗?
如果是,在保存时因为单元格编辑还未完成,所以value并未存储在单元格中。您可以考虑以下方案:
针对正在编辑的单元格,可以监听EditChange事件,获取到正在编辑的单元格值,对值和单元格索引单独保存,在回显时获取显示。
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-11-5 16:26:26
7#
本帖最后由 Wilson.Zhang 于 2024-11-5 16:27 编辑
鸳鸯配2024 发表于 2024-11-5 15:33
对。保存的逻辑就是定时保存。

就是在保存的时候,正在输入,大概率的就会出现这个问题。当前输入的单 ...

那您可能需要的是在自动保存时保存正在编辑的单元格中的值,可以参考下6楼版主提供的方案,如下代码所示:
  1. var changedObj;
  2. sheet.bind(GC.Spread.Sheets.Events.EditChange, function(e, args) {
  3.     console.log('edit change, args: ', args);
  4.     //  记录正在编辑的单元格及输入值
  5.     changedObj = {
  6.         row: args.row,
  7.         col: args.col,
  8.         data: args.editingText
  9.     }
  10. });
复制代码

执行效果如下动图所示:
EditChange记录当前正在编辑的数据.gif
回复 使用道具 举报
鸳鸯配2024
金牌服务用户   /  发表于:2024-11-6 09:18:12
8#
Wilson.Zhang 发表于 2024-11-5 16:26
那您可能需要的是在自动保存时保存正在编辑的单元格中的值,可以参考下6楼版主提供的方案,如下代码所示 ...

这个只是监听当前单元格的输入事件。我想表达的是,在保存的过程中,如果正在输入的话,当前的单元格数据会丢失。
回复 使用道具 举报
鸳鸯配2024
金牌服务用户   /  发表于:2024-11-6 09:19:08
9#
本帖最后由 鸳鸯配2024 于 2024-11-6 09:28 编辑
Lynn.Dou 发表于 2024-11-5 15:59
定时保存的实现方式是什么?导出为json或sjs吗?
如果是,在保存时因为单元格编辑还未完成,所以value并未 ...

如果在保存的话,如何把正在输入的值一起存进去?


现在保存的话,如果用户正在输入,是会经常丢失的。

回复 使用道具 举报
鸳鸯配2024
金牌服务用户   /  发表于:2024-11-6 09:47:37
10#
Lynn.Dou 发表于 2024-11-5 15:59
定时保存的实现方式是什么?导出为json或sjs吗?
如果是,在保存时因为单元格编辑还未完成,所以value并未 ...

如果不需要回显的话,那就是数据还是会丢失?
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部