如何在数据传递到angular2之前确保函数执行?

时间:2017-06-17 07:15:33

标签: angular rxjs

我想首先在服务上运行函数getCompletedExams并将所有数据返回到enrolled_exams数组但是发生的事情是首先将null值设置到enrolled_exam中,然后运行getCompletedExams。我知道Angular是异步的,所以这可能会发生,但我不知道如何解决它。代码附在此处。

private setMyEnrolledExams() {

this.homeTabService.getCompletedExams(this.studentId).subscribe(result => {
  console.log(result);
  this.enrolled_exams = result["response"];
  console.log("this "+this.enrolled_exams);
  this.setPage(1);
});}

我试过这样的事情:

  private setEnrolledExams()
  {
    this.homeTabService.getCompletedExams(this.studentId).subscribe(result => {
      console.log(result);
      this.enrolled_array = result["response"];
      console.log("this "+this.enrolled_exams);
       this.setPage(1);
    });
  }
private setMyEnrolledExams() {


  this.enrolled_exams = this.enrolled_array;

}

但它仍然执行函数首先执行的相同操作并打印空值,然后使用实际值加载数组。

1 个答案:

答案 0 :(得分:1)

使用以下代码获取数据:

*