Reputation: 34014
While reading the HTML5 IndexedDB Specification I had some doubts about its asynchronous request model. When looking at the request api example, the open
method is used to start an async request.
var request = indexedDB.open('AddressBook', 'Address Book');
request.onsuccess = function(evt) {...};
request.onerror = function(evt) {...};
At the time this request is started, there are no event handlers defined yet.
open
method succeeds before the javascript interpreter executes the assignment to onsuccess
?In my opinion an api like the following would be much more logical:
db.open('AddressBook', 'Address Book', {
onsuccess: function(e) { ... },
onerror : function(e) { ... }
});
Upvotes: 8
Views: 1041