我正在使用Clarity v2,我想仅在手风琴打开而不是单击时调用函数。
当前正在使用类似的东西:
<clr-accordion>
<clr-accordion-panel *ngFor="let tec of tecnic">
<clr-accordion-title (click)="myFunction(tec)">{{tec.id}}</clr-accordion-title>
但是 myFunction()显然在打开和关闭时被调用。 有什么建议吗?
谢谢。
答案 0 :(得分:0)
您可以将组件中的变量绑定到Accordion的[(clrIfExpanded)]指令。
所以也许像这样:
<clr-accordion>
<clr-accordion-panel [(clrIfExpanded)]="isOpen" *ngFor="let tec of tecnic">
<clr-accordion-title (click)="myFunction(tec)">{{tec.id}}</clr-accordion-title>
然后您可以在myFunction()中检查isOpen的值
答案 1 :(得分:0)
您可以使用clrAccordionPanelOpen
的已废除语法,例如:
<clr-accordion-panel *ngFor="let panel of panels" [clrAccordionPanelOpen]="panel.open" (clrAccordionPanelOpenChange)="panelChange($event, panel)">
这是一个简单的工作闪电战,我把它放在一起来证明这一点: https://stackblitz.com/edit/so-58029735-accordion-open-function