indexeddb - DOMException at the time of opendatabase with higher version -
i want create multiple datastore, found solution can on version change.
so wrote following
var request = indexeddb.open(dbname); request.onsuccess = function (e){ var db = e.target.result; var version = db.version; db.close(); var request2 = indexeddb.open(dbname , ++version); console.log(request2); //error on line request2.onsuccess = function() { console.log("success .. "); }; request2.onerror = function() { console.log("error..."); }; request2.onblocked = function() { console.log("blocked..."); }; request2.onupgradeneeded = function(e2) { //will creaate new datastore here }; }
when open database higher version giving following error "error: [exception: domexception]"
dbopendbrequest {onupgradeneeded: null, onblocked: null, onerror: null, onsuccess: null, readystate: "pending"…} error: [exception: domexception] onblocked: function () { console.log("blocked..."); } onerror: function () { console.log("error..."); } onsuccess: function () { console.log("success .. "); } onupgradeneeded: function (e2) { readystate: "pending" result: [exception: domexception] source: null transaction: null __proto__: idbopendbrequest
thanks in advance.
i think version property issue. sure has value. dom exception occures when opening db when value of version 0 or negative number. more info see the specs
when trying open db again higher version, blocked event.
try adding following db object.
db.onversionchange = function (event) { event.target.close(); }
this close current connection. upgrade of db can proceed. when upgrading db can't have open connections.
Comments
Post a Comment