等待服务返回值

时间:2017-12-13 12:44:59

标签: javascript typescript

我正在处理Typescript和Angular前端。

现在,我的代码在等待操作之前无法正常工作,直到变量获取值。

这是我的代码。

this.service.method(id).subscribe(res => {

    this.totalCount = res.totalCount; // this takes some time to load
});

var tt = this.waitForElement();

if (tt != undefined) {
  if (this.totalCount > 0) {
    // I have to do some operations

    return true;
  } 
  else {
    this.notify.error('Can not proceed without adding performance in the event');
    return false;
 }
}

等待操作的代码。

waitForElement() {
    console.log(1);
    if (typeof this.totalCount !== "undefined") {
        return true;
    }
    else {
        setTimeout(this.waitForElement, 250);
    }
}  

所以,我需要总计数来执行一些操作,直到那时我必须等待.. 但上面的代码无法正常工作。

 this.service.method(id).subscribe(res => {
                debugger
                this.totalCount = eventResult.totalCount; 

                    if (this.totalCount > 0) {
                        // I am not redirecting to this url..
                        route.url[0].parameters = { id: CurrentEventId };
                        return true;
                    } else {
                        this.notify.error('Can not proceed without adding performance in the event');
                        return false;
                    }

            });

0 个答案:

没有答案