富文本编辑中,草稿箱应该在什么时候保存数据

在富文本编辑中,用户编辑了内容后,需要时时保存用户的数据,使用localStorage保存在客户端本地。

如果用户停留在当前的编辑页面,那么每隔5秒自动保存数据,都是使用当前编辑器中的数据进行覆盖保存,如果用户不小心刷新了页面,那肯定会自动把刚才保存的当前页面的数据取出来渲染到编辑器中。

但是,如果用户又开了一个新的编辑页面,或者用户退出了又打开了新的编辑页面,用户输入了内容,此时就需要在草稿箱中创建一份新的草稿数据然后再进行覆盖更新,而不能直接在之前的草稿上覆盖更新。

问题在于,这里该怎么判断,用户刷新编辑页面,或者打开新的编辑页面,要怎么判断是新创建一份草稿数据,还是在已有的草稿数据上更新,这个该怎么判断?

阅读 3.7k
1 个回答

进入一个新的编辑页面时,可以随机生成一个token值,比如 /article/{token}, 存草稿时 {token: 草稿},页面刷新时,token不变;

进入新的页面时,token变化,这时候localStorage 判断token是否相同,不同则不用处理

推荐问题