2017-05-22 5 views
0

Wie nur nächste div auf Klick in einer Funktion zu öffnen? Ich steckte damit fest, Beispiel:Öffnen Sie nur nächste Div bei Klick in einer Funktion

<div class="row"> 
<div (click)="click()" class="div-one"> 
</div> 
<div *ngIf="opened" class="div-open"> 
</div> 
</div> 
<div class="row"> 
<div (click)="click()" class="div-one"> 
</div> 
<div *ngIf="opened" class="div-open"> 
</div> 
</div> 

So etwas wie das. Wenn ich mehrere Zeilen habe, möchte ich nur die nächste öffnen, innerhalb des gleichen Elternteils. Vielen Dank im Voraus

+0

Jede Zeile zu öffnen, sollte eine Komponente sein, dann können Sie Setze die "geöffnete" Var bei jedem Klick und alles wird funktionieren –

Antwort

1

Verwendung *ngFor und fügen eine zusätzliche Eigenschaft zu, dass die div namens Array opened

items = [{........, "opened" : false}] 

dann diese Eigenschaft ändern

<div class="row" *ngFor="let item of items"> 
<div (click)="item.opened = !item.opened" class="div-one"> 
</div> 
<div *ngIf="item.opened" class="div-open"> 
</div> 
</div> 
Verwandte Themen