我有以下按钮:
<button *ngFor="let btn of _formBtn" [type]="(btn.type=='submit')?'submit':'button'"
class="btn btn-icon"
[ngClass]="btn.class"
(click) = "_btnClick(btn, _finalConfig, _formBtn)"
[disabled]="btn.disabled"
[hidden]="btn.hidden">
<i *ngIf="btn.BtnType!='next'" [class]="btn.icon"></i>
<span>{{btn.label}}</span>
<i *ngIf="btn.BtnType=='next'" [class]="btn.icon"></i>
</button>
工作正常。但现在我想修改逻辑,以便每当btn.label
变为'已确认'时,我想调用另一个函数而不是_btnClick
函数。如何根据条件修改现有的点击事件?比如前:(click) = *ngIf="btn.label=='confirmed'"? _confirmBtnClicked(btn, _finalConfig, _formBtn) : "_btnClick(btn, _finalConfig, _formBtn);"
我很安静。知道如何做那些家伙吗?或者对我的方案有任何其他更好的建议?先谢谢你们。
答案 0 :(得分:1)
您可以调用另一种方法来检查相同内容:
(click) = "_confirmedClick()"
然后在你的组件中:
public _confirmedClick(){
if(this.btn.label === "confirmed"){
this._confirmBtnClicked(this.btn, this._finalConfig, this._formBtn);
}else{
this._btnClick(this.btn, this._finalConfig, this._formBtn);
}
}
答案 1 :(得分:0)
创建一个方法,例如clickMe()
,并在其中传递btn.label
。
然后根据标签,您可以再次根据btn.label
维诺德