我有一段代碼爲IndexedDB的如何將回調傳遞給全局的onerror方法?
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(而不是複製粘貼所有的地方)。問題是如何傳遞迴調?
是的,我已經試過這個,這給我錯誤回調是undefined – surya
@spiderdevil你需要通過回調,看我的編輯。 – jbabey
這會好嗎?因爲onerror期待函數(e) – surya