首页 > 解决方案 > 单击按钮时如何展开/折叠手风琴选项卡?

问题描述

我有这个手风琴,所以为了展开/折叠手风琴选项卡,我单击选项卡上的任意位置,但我希望能够在单击“单击我”按钮而不是手风琴选项卡时展开/折叠。谁能指出我正确的方向?提前非常感谢!

这是我的代码:

现场演示

<p-accordionTab header="Accordion Tab 1" [selected]="true">
   <p-header>
      Accordion Tab 1
      <span>
         <button (click)="myFunction($event)">Click me</button>
      </span>
  </p-header>
   <ul>
     <li>Colors</li>
   </ul>
</p-accordionTab>

标签: angulartypescriptprimeng

解决方案


css 文件:-

.zippy{
 border: 1px solid #ccc;
 border-radius:2px;
}
.zippy-heading{
 font-weight: bold;
 padding: 20px;
 cursor: pointer;
 background: #f09b9b;
}
.zippy-body{
 padding: 20px;
}
.expanded{
 background: #b3b0b0;
}

html视图:-

<div class="zippy" style="padding:40px;">
  <div class="zippy-heading"
    [class.expanded]="isExpandedBikes"
    (click)="onBikeClick()">
    {{bike}}
    <span
      class="fa"
      [class.fa-angle-down] ="!isExpandedBikes"
      [class.fa-angle-up]="isExpandedBikes"
      (click)="onBikeClick()" style="font-size: 20px; position: absolute;right: 50px;"></span>
  </div>
  <div *ngIf="isExpandedBikes" class="zippy-body">
    <li *ngFor ="let data of bikeContent">
      {{data}}
    </li>
  </div>
</div>

组件文件:-

constructor() { 
 this.bike = "Bikes";
 this.bikeContent=["My First Bike","My Second Bike","My Third Bike"];
}

对于组件文件中的按钮 Fxn:-

 onBikeClick(){
  this.isExpandedBikes =! this.isExpandedBikes;
 }

推荐阅读