Я использую AngularJS и просто CSS / HTML для создания этой веб-страницы.У меня есть список ссылок на книги, которые я перебираю и создаю новую «карточку» (просто создаю div) для каждой ссылки.В рамках этого цикла я также создаю переключатель, чтобы рядом с каждой картой был переключатель.Я хочу, чтобы тумблер был включен / true, когда нажата ссылка на книгу, но сейчас он, кажется, работает только для первой ссылки, как я хочу.Если я нажму на любую другую ссылку в списке, переключатель не будет работать.
По сути, я настроил его так, чтобы при щелчке по ссылке запускалась функция toggleSwitch (), которая запускала и переключала кнопку.Я думаю, проблема в том, что мой угловой вариант написан так, что он каждый раз ищет первую ссылку, но я не уверен, как пройтись по списку.(Я новичок в веб-разработке, поэтому прости меня, если это кажется глупым)
<span *ngIf="selectedTitles">
<div *ngFor="let audibleTitle of selectedTitles" class="justify-content-center">
<a class="bookLink" href="link to a book" (click)="toggleSwitch()" target="_blank">
<div class="audible-title card-body">
<strong>title name</strong> <br>
title author <strong> | </strong>
<!--<span *ngFor="let genre of audibleTitle.genre"> {{genre}} > </span>-->
<span>title genre</span>
</div>
</a>
<label class="switch">
<input #link type="checkbox" id="sliderButton" >
<span class="slider round" ></span>
</label>
</div>
</span>
export class ContentRecommendationComponent implements OnInit {
@ViewChild('link') testLink;
@Input() prometheusResponse: PrometheusResponse;
selectedTitles: AudibleTitle[] = [];
constructor() {
}
ngOnInit() {
}
toggleSwitch(){
this.testLink.nativeElement.checked = true;
console.log('this is showing');
}
}
Я хочу, чтобы каждый тумблер ассоциировался с его правильной ссылкой.Я думаю, мой вопрос, как я могу ссылаться через каждую ссылку в угловых?