Angular 2 - ngFor - 局部变量" first"不起作用

时间:2016-03-08 00:42:05

标签: angular angular2-template

我正在使用ngFor循环来创建一个带有按钮的列表来移动对象。我试图首先使用ngFor变量,最后禁用某些按钮。我发现"第一"不起作用

<ul>
<li *ngFor="#hero of heroes; #i=index, #first=first, #last=last">
    <button class="btn btn-default btn-lg" [disabled]="first" (click)="moveToTop(hero, i)">Top</button>
    <button class="btn btn-default btn-lg" [disabled]="first" (click)="moveUp(hero, i)">Up</button>
    <button class="btn btn-default btn-lg" [disabled]="last" (click)="moveDown(hero, i)">Down</button>
    <button class="btn btn-default btn-lg" [disabled]="last" (click)="moveToBottom(hero, i)">Bottom</button>
</li>

我在这里有一个工作示例Plunker preview

我这样做是否正确?我知道我能做到

[disabled]="i==0"

但我在思考&#34;首先&#34;和&#34;最后&#34;看起来更优雅。

1 个答案:

答案 0 :(得分:5)

现在你可以使用[disabled]="i === 0",因为本地变量first不存在,但是有一个pull request来添加它,但还没有合并。

<强>更新

上面的pull请求引用了beta.15,你可以看到changelog https://github.com/angular/angular/blob/master/CHANGELOG.md

这是plnkr first正常工作。您也可以看到documentation