Jesper
Jesper

Reputation: 2814

Loop doesn't run

I am trying to make a loop in my component that makes some calls to a server:

getBeds() {
this.patientService.getBeds(this.selectedWard).subscribe(
  result => {
    console.log(result);
    this.beds = result;
    this.getBedDetails();
  },
  err => {
    console.log(err);
  }
 )
}

getBedDetails() {
  console.log("HI");
  for (let bed of this.beds) {
    console.log("RUN");
    this.patientService.getBedDetails(bed).subscribe(
      result => {
        console.log("result");
        this.bedDetails.push(result);
      },
      err => {
        console.log(err);
      }
    )
  }
}

"HI" gets printed in the console, but "RUN" does not, so the loop does not get executed. Where is my mistake? Thanks.

Upvotes: 0

Views: 40

Answers (1)

Aravind
Aravind

Reputation: 41571

As resolved in teamviewer,

Make the below change,

getBeds() {
this.patientService.getBeds(this.selectedWard).subscribe(
  result => {
    console.log(result);
    this.beds = result.beds;////////////////////////// missed property here
    this.getBedDetails();
  },
  err => {
    console.log(err);
  }
 )
}

Upvotes: 1

Related Questions