私はIndexedDBのコードを持っています
GetObj = function(storeName, key, callback){
var db = indexedDB.db;
if(db){
var transaction = db.transaction([storeName], transactionType.READ_ONLY);
var obj = undefined;
transaction.oncomplete = function(event) {
if(callback){
callback(obj);
}
};
var objectStore = transaction.objectStore(storeName);
var request = objectStore.get(key);
request.onerror = function (e){
console.log("onError: in", e);
if (callback) {
callback(-1);//error
}
}
request.onsuccess = function(event) {
obj = request.result;
};
}
}
request.onerror 関数をグローバルに定義して、その関数をすべての onerror で再利用できるようにしたいと思います (コピーをあちこちに貼り付けるのではなく)。問題はコールバックを渡す方法ですか?