Ich erstelle eine Topic-Komponente durch Iterieren über Themen Variable in Meeting-Edit-Komponente.Variable ist auf die gleichen Komponenten verteilt
<app-topic *ngFor="let topic of topics"
[topic]="topic"
>
</app-topic>
Der TS-Code von Topic Komponente:
@Input('topic') topic: Topic;
show = false;
constructor() { }
ngOnInit() {
}
und Vorlage:
<div class="topic">
<p style="padding: 10px 0">{{topic.name}}</p>
<label for="upload-photo" style="cursor: pointer">Fayl</label>
<input type="file" class="inputFile" id="upload-photo" (click)="this.show = !this.show" >
<div #content style="height: 200px;width: 200px " *ngIf="show"></div>
</div>
Wie Sie standardmäßig sehen zeigen Variable falsch ist. Wenn auf das Eingabeelement geklickt wird, sollte es die Show-Variable umschalten, die #content div anzeigen würde. Beim Klicken auf das Eingabeelement jeder Komponente tritt jedoch merkwürdiges Verhalten auf. Nur die Variable show der ersten Topic-Komponente wird umgeschaltet. Es ist so, dass jede Themenkomponente dieselbe Variable verwendet. Warum das passiert? bitte helfen Sie das zu lösen. Es scheint ein Fehler zu sein.
versuchen Sie 'this.show =! This.show' zu' show =! Show' zu ändern. – Zircon
Ich habe mich geändert. Aber es hat nicht gelöst .. –
Warum benutzt du #content? Was ist sein Nutzen? –