Próbuję ustawić jako domyślne pierwsze wystąpienie w tym przykładzie: plunkr
otrzymuję następujący błąd:
Unhandled Promise rejection: Template parse errors:
TypeError: Cannot read property 'toUpperCase' of undefined ("dButtonToggleGroup">
<md-button-toggle [ERROR ->]*ngFor="let indicador of indicadores; #first = first" value="indicador.id" [checked]="first">"): ng:///AppModule/HomeComponent.html@35:78
Parser Error: Unexpected token #, expected identifier, keyword, or string at column 31 in [let indicador of indicadores; #first = first] in ng:///AppModule/HomeComponent.html@35:78 ("<md-button-toggle *ngFor="let indicador of indicadores; #first = first" value="indicador.id" [ERROR ->][checked]="first">
<span>{{ indicado"): ng:///AppModule/HomeComponent.html@35:153
co jest nie tak??
angular
angular-material
PriNcee
źródło
źródło
let i = index
, po prostu zmień to nalet first = first;
i zmień powiązanie [zaznaczone], aby po prostu zaznaczało „pierwsze” zamiast „i == 0”.ngFor
kątowe uwidacznia następujące zmienne lokalneindex
,first
,last
,even
iodd
. Czy możesz zaktualizować odpowiedź, aby wyjaśnić tę kwestię przyszłym użytkownikom?let first = first
ciebie możesz pisaćfirst as isFirst
(isFirst to zmienna niestandardowa), jak opisano tutaj: angular.io/api/common/NgForOf#local-variablesOto, jak to się robi w Angular 6
Zwróć uwagę na zmianę z
let first = first
nafirst as isFirst
źródło
|
Dzięki;
za to do pracy.let first = first
ifirst as isFirst
obie deklaracje są poprawne w użyciu, drugi alias jest prawie czytelnyW ten sposób możesz uzyskać dowolny indeks w
*ngFor
pętli w ANGULAR ...Możemy użyć tych aliasów w
*ngFor
index
:number
:let i = index
Aby uzyskać wszystkie indeks obiektu.first
:boolean
:let first = first
Dostać pierwszy indeks obiektu.last
:boolean
:let last = last
Aby dostać ostatni indeks obiektu.odd
:boolean
:let odd = odd
Dostać dziwne indeks obiektu.even
:boolean
:let even = even
Dostać nawet indeks obiektu.źródło