为什么此方法不会停止执行后端的选择(Angular Front + Java Spring Boot Back)

问题描述 投票:-1回答:1
 getDietas(user: string) {
      this.i = 0; 
      this.http.get<any>('http://localhost:8080/dietas')
        .subscribe(data => {
          this.dietas = data._embedded.dietas;
          console.log(data);

          for (const x of this.dietas) {
            if (x.email === user) {
              this.dietaNueva = {
                idDieta: x.idDieta,
                dieta: x.dieta,
                nombreyApellidosCliente: x.nombreyApellidosCliente,
                email: x.email,
              };
              this.masDietas[this.i] = this.dietaNueva;
              this.i++;
              // break;
            }
          }

        });

      return this.masDietas;
  }

我不明白为什么这个功能会继续执行相同的http.get不间断,并使我的后端一次又一次地执行选择语句。

我只是在html中调用此函数一次,以获得我需要在屏幕上显示的列表,仅此而已;我在表中执行ngfor并使其显示列表masdietas上的每个元素,我不知道发生了什么,并且我不知道在函数第一次执行后如何停止它。

angular angular8 http-get
1个回答
0
投票

您看到表为空,因为在渲染模板时未发生API调用和数据获取。

© www.soinside.com 2019 - 2024. All rights reserved.