I have an accordion as shown below.
When the link is clicked, I'd need to trigger the click event of all p-accordianTab elements.
How is it possible?
<a (click)="openCloseAll()" >{{openCloseAllText}} all</a>
<p-accordion [multiple]="true">
<div class="row" *ngFor="let category of result.Categories">
<p-accordionTab #accordianTab header="{{category.Name}}">
</p-accordionTab>
</div>
</p-accordion>
I tried adding this "#accordionTab" to the element and accessing it from TypeScript but doesn't work:
@ViewChild('accordionTab') accordionTab: ElementRef;
openCloseAllText: string = "Open";
openCloseAll() {
// get all accordions and click them
this.openCloseAllText = this.openCloseAllText === "Open" ? "Close" : "Open";
this.accordionTab.nativeElement.click();
}
TypeError: Cannot read property 'nativeElement' of undefined