关于ng-content的Stange行为

时间:2018-10-31 13:50:55

标签: angular angular6

假设具有以下角度代码:

<ng-container *ngFor="let ..."></ng-container>

<ng-container *ngIf="execute()"></ng-container>

我要先执行* ngFor运算,然后再执行* ngIF。 * ngIf函数执行使用从* ngFor计算得出的一些值,因此我们需要在执行* ngFor之后以及在执行* ngIf之后执行。问题是* ngf首先开始调用* nif。有人可以帮助我吗?

2 个答案:

答案 0 :(得分:3)

  

理想情况下,您应该在ts文件中处理这种情况。但是,这是替代方法-

<ng-container *ngFor="let ...; let last = last">
        ....
    <ng-container *ngIf="last ? execute() : null"></ng-container> <!-- Execute at last index -->
</ng-container>

答案 1 :(得分:0)

您可能想要的是这样的东西:

<ng-container *ngFor="let.... ">
  <div *ngIf="execute">
       //your stuff here....
  </div>
</ng-container>