我想在禁用按钮上触发事件
<button ion-button icon-only [disabled]="!isConnected" (click)="openModal()" (disabledClick)="showErrMsg()" shortVibrateOnTap>
<ion-icon ios="ios-swap" md="ios-swap"></ion-icon>
</button>
如果无法做到这一点,我如何设置按钮的样式,因为它已被禁用?
答案 0 :(得分:1)
禁用按钮上的禁用类离子集opacity: 0.4;
可提供视觉效果,pointer-events: none;
可阻止任何事件触发。
因此,如果您想使按钮看起来像禁用,则应创建一个类
.disabled {opacity: 0.4;}
否则你可以用div包裹按钮并在其上附加一个点击事件:
<div (click)="showErrMsg()">
<button ion-button icon-only [disabled]="!isConnected" (click)="openModal()" shortVibrateOnTap>
<ion-icon ios="ios-swap" md="ios-swap"></ion-icon>
</button>
</div>
在showErrMsg
功能中,只有在!isConnected
答案 1 :(得分:1)
我使用属性绑定来解决它。
<button ion-button icon-only [style.opacity]="DISABLED_CHECK ? 0.4 : 1" (click)="openModal()" shortVibrateOnTap>
<ion-icon ios="ios-swap" md="ios-swap"></ion-icon>
</button>
或使用自定义的disabeld类
<button ion-button icon-only [class.disabled]="DISABLED_CHECK" (click)="openModal()" shortVibrateOnTap>
<ion-icon ios="ios-swap" md="ios-swap"></ion-icon>
</button>
在我的openModal回调函数中,我使用了适当的策略。