gpt4 book ai didi

angular - 单击时如何防止垫扩展面板打开?

转载 作者:行者123 更新时间:2023-12-02 03:06:53 25 4
gpt4 key购买 nike

我想控制我的 mat-expansion-panel 仅使用面板的 [expanded] 输入属性。我正在使用 NGRX 作为状态管理。

因此,我不希望面板在点击时打开。相反,我有自己的点击监听器,它会发送正确的操作,导致面板打开。

如何防止它在点击时打开?我尝试了 (click)="$event.stopImmediatePropagation(); 但它没有成功。

<mat-accordion [multi]="true">
<mat-expansion-panel [expanded]="item.isOpen">
<mat-expansion-panel-header (click)="togglePanel($event, item)">
<!-- Header Content-->
</mat-expansion-panel-header>

<ng-template matExpansionPanelContent>
<!-- Panel Content -->
</ng-template>
</mat-expansion-panel>
</mat-accordion>

有什么想法吗?

最佳答案

(据我所知)没有内置的方法来禁用面板的点击,认为有一个简单的技巧只使用 CSS 来完成你想要的。

您可以将样式设置为pointer-events: none;<mat-expansion-panel>它不会监听任何点击事件,然后您可以使用自定义逻辑按自己的方式切换它。

我做了一个StackBlitz example来证明它。

关于angular - 单击时如何防止垫扩展面板打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58763022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com