【发布时间】:2016-08-16 23:08:37
【问题描述】:
我有以下手风琴:
我需要箭头在手风琴打开时像这样^,在手风琴关闭时像这样v
标记看起来像这样,请注意 divaccordion-heading 上的 (click)="toggleAssignedTasks()" 我切换分配任务,然后我将 fontawesome 向下箭头的类相应地更改为向上或向上:
<accordion class="row th-assigned-ready">
<accordion-group [isOpen]="isAssignedTasksVisible" >
<div class="th-heading" accordion-heading (click)="toggleAssignedTasks()">
<strong class="th-text-ready">Ready for Review (2)</strong>
<i class="fa"
[ngClass]="{'fa-chevron-down': isAssignedTasksVisible, 'fa-chevron-up': !isAssignedTasksVisible}"
aria-hidden="true"></i>
</div>
...
</accordion-group>
</accordion>
这是可行的,但是当用户点击手风琴时,事件会变得混乱,似乎(点击)事件正在被手风琴默认事件吸收。
我还尝试在手风琴中使用原生 [showArrows]="true",如下所示:
但我得到错误:
Promise rejection: Template parse errors:
Can't bind to 'showArrows' since it isn't a known native property ("
</div>
<accordion class="row th-assigned-ready" [ERROR ->][showArrows]="true" >
<accordion-group [isOpen]="isAssignedTasksVisible" >
"):
更新:
toggleAssignedTasks() 看起来像这样
public toggleAssignedTasks(): void {
this.isAssignedTasksVisible = (this.isAssignedTasksVisible) ? false : true;
}
【问题讨论】:
-
你能发布
toggleAssignedTasks()函数吗?另外,为什么你在雪佛龙上使用斜体标签?最后,showArrows不是原生的,因此 Angular 正在寻找 Accordian 组件上不存在的属性,因此出现错误。如果可能,请尝试重现您在 plunker 中看到的效果,这样会更容易有人帮助您找出问题所在。 -
@AndrewBabin 发布更新谢谢
-
您能否帮助我们更好地了解到底出了什么问题?一方面,在
[ngClass]="{'fa-chevron-down': isAssignedTasksVisible, 'fa-chevron-up': !isAssignedTasksVisible}" aria-hidden="true">中,当isAssignedTasksVisible为真时应用下雪佛龙类,当它为假时应用上雪佛龙类。这将使您与您正在寻找的相反(当任务可见时您想要 ^ )。如果isAssignedTasksVisible有默认值,这可能会抛出toggleAssignedTasks()。 -
@AndrewBabin,谢谢。好吧,现在发生的事情是,即使我点击手风琴中不是我想要的任何项目,手风琴也会关闭。我只希望它在点击 V 形元素时打开或关闭。
-
@AndrewBabin 你知道当我点击手风琴标题时如何停止关闭手风琴的事件吗?在我发布的图片中显示“已准备好接受评论 (2)”的灰色部分
标签: angular angular2-template angular2-directives ng2-bootstrap