我實現我的web應用程序使用IndexedDB的儲存器(Chrome只),存儲記錄沿清理IndexedDB的對象存儲
{raw:"string",id:"string",dayUsed:number}
其中
- ID的行序列 - 是標識對象的唯一字符串(用作索引DB對象存儲鍵
- dayUsed - 記錄該對象使用的最後一天(自日期(2013,11,10))
隨着應用程序的使用,該商店中的記錄數量將增加。我想保持標籤上有什麼這個對象店裏發生的事情,以修剪它,當
- 記錄在存儲號碼exceeeds預設的閾值
- 有在店裏用dayUsed值的記錄超過預設的閾值
我也跟着教程MDN(其中順便說一句有誤傳的一些小位)和實施的大部分我所需要的,但記錄修剪位似乎仍不清楚。
IndexedDB提供的核心方法非常有限。例如,即使獲得記錄總數也不僅僅是發佈單行數據。在應用程序運行時,我可以不時運行一個清理程序,該程序遍歷整個對象存儲並使用dayUsed breah刪除條目。但是,鑑於我的對象庫可能有幾百個條目,這可能是一個冗長的操作,會降低應用程序的速度。那麼在哪裏?培養一個webworker來完成這項工作?
這看起來比我設想的更復雜。對我的問題 - 是否有高級包裝提供SQL接口到IndexedDB商店,可以處理所有這些任務呢?
謝謝。最後,我最終編寫了自己的代碼來完成這項工作。然而,這是你的答案,讓我走上正軌,所以我接受它。 – DroidOS