最近开发过程碰到一个问题:
在页面上有大量数据需要临时存储,在其他模块中使用,页面关闭时清除。
本来采用的sessionStorage,使用方便,兼容性好。直到有一次,一次性存了6千个节点信息的流图,然后存储就爆了。(谷歌浏览器66.0.3359.139(正式版本32位))
假设sessionStorage的存储量为5M,6千个节点的流图数据量超过5M,方便计算就以6千节点/5M为1个单位。
在需求里,1个流图可能存在1万个节点数据的情况。也就是一次性存储至少达到10M。
另外,一个页面会有多个流图存在,保险起见,总存储量大致为100M。
暂时想到的思路,
①数据的存储直接交给后台。优点:解决了数据存储量问题。缺点:请求耗时间,不稳定,清除操作不方便。
②采用indexedDB。优点:存储量足够了,不借助后台。缺点:兼容性不太好,API操作不方便。
③采用其他开源的插件。这暂时没找到较适合的,查阅了localForage文档,看操作挺方便的,可貌似存储量5M。
白板的微信
相关分类