Angular 角传递onclick值
我有很多年的链接,如下所示:Angular 角传递onclick值,angular,typescript,Angular,Typescript,我有很多年的链接,如下所示: <div class="header-years-container default-color"> <a class="years-items" *ngFor="let year of yearsLink;" [ngClass]="{'active': selectedYear === year}" (click)="onSelectYear($event.target.innerText)">
<div class="header-years-container default-color">
<a class="years-items" *ngFor="let year of yearsLink;" [ngClass]="{'active': selectedYear === year}" (click)="onSelectYear($event.target.innerText)">
{{ year }}
</a>
</div>
ngOnInit() {
this.yearsLink = [...new Set(this.absenceWidgetService.getAbsencesData().map(item => item.year))];
this.selectedYear = this.yearsLink[0];
this.absences = this.absenceWidgetService.getAbsencesData(this.selectedYear)
}
onSelectYear(year) {
this.selectedYear = year;
this.absences = this.absenceWidgetService.getAbsencesData(this.selectedYear);
}
当用户单击事件时,如何在GetAbscenceData方法中传递selectedYear的每次正确值?目前我总是有默认值
谢谢。您不需要使用
$event
,您可以直接将年份作为函数中的参数传递
<div class="header-years-container default-color">
<a class="years-items" *ngFor="let year of yearsLink;" [ngClass]="{'active': selectedYear === year}"
(click)="onSelectYear(year)">{{ year }}</a>
</div>
{{year}
你这样试过了吗
HTML:
<div class="header-years-container default-color">
<a class="years-items" *ngFor="let year of yearsLink;" [ngClass]="{'active': selectedYear === year}" (click)="onSelectYear(year)">
{{ year }}
</a>
</div>
我已经解决了在移动数据源属性填充事件方法时的问题。ngOnInit()中有此属性的默认值,并为每个单击事件传递一个新值
看起来是这样的:
<div class="header-years-container default-color">
<a class="years-items" *ngFor="let year of yearsLink;" [ngClass]="{'active': selectedYear === year}" (click)="onSelectYear($event.target.innerText)">
{{ year }}
</a>
</div>
ngOnInit() {
this.yearsLink = [...new Set(this.absenceWidgetService.getAbsencesData().map(item => item.year))];
this.selectedYear = this.yearsLink[0];
this.absences = this.absenceWidgetService.getAbsencesData(this.selectedYear)
}
onSelectYear(year) {
this.selectedYear = year;
this.absences = this.absenceWidgetService.getAbsencesData(this.selectedYear);
}
它不满足。同样的事情。不要传递新值selectedYear only default。