在 Dexie 中运行事务时出现此错误:
name: SubTransactionError message: table _ not included in parent transaction
这仅在我运行此代码后发生:
DeleteApiToken.then (() => {
CacheController.Invalidate();
DataControllerCreator.Blocked++;
Render();
});
Api.Call(this.ApiCall,this.Data,() => {DataControllerCreator.Blocked--;},{ResetCacheState: this.ResetCacheState});
};
DeleteApiToken 函数看起来像这样。
function DeleteApiToken() {
return DB.transaction('rw', DB.MySelf, () => {
DB.MySelf.delete('ApiToken');
}).catch(function (E) {
console.log(E);
return false;
})
}
然后,Render 函数会导致应用程序重新渲染并运行更多事务,但它们都会抛出前面提到的错误。如果没有调用 DeleteApiToken,它们不会。
如果您可以看到我的代码出现错误,那就太好了,否则只需简单解释一下为什么会抛出 SubTransactionError 就足够了。谢谢!