有没有办法知道所有请求何时完成但在事务提交之前? transaction.oncomplete
事件不允许在仍然调用transaction.abort()
时运行任何其他逻辑。所以,更好的方法是使用等效的transaction.completing
(我做了这个),它只会在所有请求完成后触发,但仍然允许调用transaction.abort()
。
http://www.w3.org/TR/IndexedDB/
一般来说,这应被视为良好做法。在最常见的情况下,简单的语法错误不会使数据库处于不一致的情况。