猿问

前端持久化存存储操作简单,兼容性好又能存储大量数据的方法?

最近开发过程碰到一个问题:
在页面上有大量数据需要临时存储,在其他模块中使用,页面关闭时清除。
本来采用的sessionStorage,使用方便,兼容性好。直到有一次,一次性存了6千个节点信息的流图,然后存储就爆了。(谷歌浏览器66.0.3359.139(正式版本32位))

假设sessionStorage的存储量为5M,6千个节点的流图数据量超过5M,方便计算就以6千节点/5M为1个单位。
在需求里,1个流图可能存在1万个节点数据的情况。也就是一次性存储至少达到10M
另外,一个页面会有多个流图存在,保险起见,总存储量大致为100M

暂时想到的思路,
①数据的存储直接交给后台。优点:解决了数据存储量问题。缺点:请求耗时间,不稳定,清除操作不方便。
②采用indexedDB。优点:存储量足够了,不借助后台。缺点:兼容性不太好,API操作不方便。
③采用其他开源的插件。这暂时没找到较适合的,查阅了localForage文档,看操作挺方便的,可貌似存储量5M。


白猪掌柜的
浏览 788回答 1
1回答

白板的微信

看你的描述我认为indexedDB是最合适的但你说的兼容性不太好具体指的是?我的意思是,根据你们产品适用人群和场景,浏览器版本之类的跟兼容性相关的兼容性有什么硬性需求吗?如果没有的话,就采用indexedDB吧
随时随地看视频慕课网APP
我要回答