Angular 2 - ngFor - 局部变量 "first" 不起作用
Angular 2 - ngFor - local variable "first" does not work
我正在使用 ngFor 循环创建一个列表,其中包含用于移动对象的按钮。我试图首先和最后使用 ngFor 变量来禁用某些按钮。我发现 "first" 不起作用
<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"
但我认为 "first" 和 "last" 看起来更优雅。
现在你可以使用 [disabled]="i === 0"
因为局部变量 first
不存在,但是有一个 pull request 可以添加它,虽然还没有合并。
更新
上面的 pull request 参考它登陆了 beta.15,你可以看到更新日志 https://github.com/angular/angular/blob/master/CHANGELOG.md。
这里还有一个plnkr with first
working. You can see the documentation。
我正在使用 ngFor 循环创建一个列表,其中包含用于移动对象的按钮。我试图首先和最后使用 ngFor 变量来禁用某些按钮。我发现 "first" 不起作用
<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"
但我认为 "first" 和 "last" 看起来更优雅。
现在你可以使用 [disabled]="i === 0"
因为局部变量 first
不存在,但是有一个 pull request 可以添加它,虽然还没有合并。
更新
上面的 pull request 参考它登陆了 beta.15,你可以看到更新日志 https://github.com/angular/angular/blob/master/CHANGELOG.md。
这里还有一个plnkr with first
working. You can see the documentation。