angular4 NG-for 循环时能否给个别数据添加额外的属性

clipboard.png
如图第二个div与其他div的数据不一样

阅读 3.5k
2 个回答

当然可以了啊
如果只有两种情况,用*ngIf="isSomething; else other"
如果有多种情况,使用ngSwitch。

<ng-container *ngFor="let btn of buttons; let i=index">
    <ng-container [ngSwitch]="btn.text">
        <span *ngSwitchCase="'A'"
            class="a" [title]="btn.text" (click)="_buttonClicked(btn.id)">
        </span>
        <span *ngSwitchCase="'B'"
            class="b" [title]="btn.text" (click)="_buttonClicked(btn.id)">
        </span>
        <button *ngSwitchDefault type="button"
                class="{{_getStyle(btn.id)}} rep-button"
                (click)="_buttonClicked(btn.id)">
                {{btn.text}}
        </button>
    </ng-container>    
</ng-container>    

可以把额外的属性先封装在数组中,然后再循环。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进