2013-04-05 35 views
1

我使用IndexedDB在Chrome中保存遊戲數據。爲什麼空的IndexedDB仍佔用空間?

平均遊戲大概是4MB。保存了幾個遊戲然後刪除它們後,開發控制檯的「資源」選項卡顯示我的indexedDB是空的,但如果我轉到內容設置「Cookies和網站數據」,它將顯示大約12MB的索引數據庫磁盤大小。

這是一個之後刷新,甚至重新啓動的鉻。以下是我的刪除代碼,當我刪除並且舊數據的查詢不會返回任何內容時,我會獲得成功。

database.indexedDB.deleteGame = function(nameIn){ 
    var db = database.indexedDB.db; 
    var trans = db.transaction(["saves"], "readwrite"); 
    var store = trans.objectStore("saves"); 
    var wipeSlate = store.delete(nameIn); 
    wipeSlate.onsuccess = function(e) { 
     console.log("Old game wiped"); 
    }; 
    wipeSlate.onerror = function(e) { 
     console.log("I don't think the old game existed..." + e); 
    }; 
}; 

我檢查以下問題(和搜索結果沒有顯示任何東西太有前途):

但他們都沒有處理我的的問題,任何和所有的幫助非常感謝。

回答

1

你爲什麼要擔心?

操作系統和瀏覽器可能採取整體方法來優化用戶體驗。存儲就是其中之一。在大多數情況下,而不是刪除,標記爲刪除更有效。

+1

由於IndexedDB在詢問用戶權限之前有50MB的限制,我希望推遲儘可能地向用戶請求許可。考慮到你所說的話,我認爲在接近50MB的時候,我可以讓chrome擔心解放空間嗎? – agryson 2013-04-07 12:07:32

+0

是的,讓瀏覽器照顧一下。 – 2013-04-07 13:08:22

+0

謝謝,雖然爲了您的回答,您能否聯繫我確認實際情況如何?我想確認我所看到的不是一個錯誤。 – agryson 2013-04-07 14:00:02

相關問題