当 IndexedDB 事务完成或成功时,我使用两个不同的回调事件来响应:
假设... db:IDBDatabase 对象,tr:IDBTransaction 对象,os:IDBObjectStore 对象
tr = db.transaction(os_name,'readwrite');
os = tr.objectStore();
情况1 :
r = os.openCursor();
r.onsuccess = function(){
if(r.result){
callback_for_result_fetched();
r.result.continue;
}else callback_for_transaction_finish();
}
案例2:
tr.oncomplete = callback_for_transaction_finish();
如果他们两个工作相似,那就太浪费了。那你能告诉我,它们之间有什么区别吗?