我有一个带有“public”方法的typescript类(syncItemsWithServer)。此方法异步调用此类中的另一个“私有”方法(self.getItemsToSync)。
class.ts
public syncItemsWithServer(DoOnComplete: Function) {
let self = this;
let strDBName = "dbname";
self.getItemsToSync(strDBName, function (obj: any) {
if (!obj || obj.length == 0) {
DoOnComplete(0); //Is null
return;
}
//... Code
}
}
的index.html
<script>
var c = new class();
c.syncItemsWithServer(function (response) {
console.log(response);
}
</script>
调用“DoOnComplete(0)”时出现javascript错误,因为DoOnComplete为null。错误是“预期的对象”。
我想原因是“syncItemsWithServer”中的代码是同步调用的?
我该如何纠正?