最近開發過程碰到一個問題:在頁面上有大量數據需要臨時存儲,在其他模塊中使用,頁面關閉時清除。本來采用的sessionStorage,使用方便,兼容性好。直到有一次,一次性存了6千個節點信息的流圖,然后存儲就爆了。(谷歌瀏覽器66.0.3359.139(正式版本32位))假設sessionStorage的存儲量為5M,6千個節點的流圖數據量超過5M,方便計算就以6千節點/5M為1個單位。在需求里,1個流圖可能存在1萬個節點數據的情況。也就是一次性存儲至少達到10M。另外,一個頁面會有多個流圖存在,保險起見,總存儲量大致為100M。暫時想到的思路,①數據的存儲直接交給后臺。優點:解決了數據存儲量問題。缺點:請求耗時間,不穩定,清除操作不方便。②采用indexedDB。優點:存儲量足夠了,不借助后臺。缺點:兼容性不太好,API操作不方便。③采用其他開源的插件。這暫時沒找到較適合的,查閱了localForage文檔,看操作挺方便的,可貌似存儲量5M。
前端持久化存存儲操作簡單,兼容性好又能存儲大量數據的方法?
白豬掌柜的
2018-09-24 15:23:14