在 Angular NgIf 中更改 return 值
Change return value in Angular NgIf
我的angular9项目中有一个按钮如下
<button *ngIf="showRaiseButton()" [ngClass]="unlockRaiseButton()" (click)="showRaiseOptions()">RAISE
<h3 class="text-on-btn-ch"> R</h3>
</button>
这个按钮是根据ngif里面函数的return值显示的
showRaiseButton(){
return this.actionState === 'actBettedPot' || this.actionState === 'actNotBettedPot'
|| this.actionState === 'folded' || this.actionState === 'called'
|| this.actionState === 'checked' || this.actionState === 'bet'
|| this.actionState === 'raised';
}
我需要在点击的时候隐藏这个按钮button.The点击如下
showRaiseOptions(){
if (this.unlockRaiseBtn){
this.showRaiseOption = true;
this.showBetOption = false;
this.displayRaiseBtn = false;
}
}
我该怎么做task.Please帮助
我会为按钮创建一个变量,它看起来像这样
showBtn: boolean;
showRaiseButton(){
if (this.actionState === 'actBettedPot' || this.actionState === 'actNotBettedPot'
|| this.actionState === 'folded' || this.actionState === 'called'
|| this.actionState === 'checked' || this.actionState === 'bet'
|| this.actionState === 'raised';) {
this.showBtn = true
}
return
}
然后在按钮上单击添加另一个操作,如下所示:
showRaiseOptions(){
if (this.unlockRaiseBtn){
this.showRaiseOption = true;
this.showBetOption = false;
this.displayRaiseBtn = false;
this.showBtn = false
}
}
<button ngIf="showBtn" (click)="showRaiseoptions()"></button>
但是,如果您必须在代码中的其他地方调用 ShowRaiseButton() ,当某个动作发生时可能是 this.actionState 值更改或 ngOnInit 取决于您的代码的其余部分
您应该使用外部条件在您的视图中显示或隐藏一个部分,ng-container 不会将 html 标记作为 div
或 ...
例如你可以这样使用它:
displayRaiseBtn: boolean = true;
<ng-container *ngIf="displayRaiseBtn">
<button *ngIf="showRaiseButton()" [ngClass]="unlockRaiseButton()" (click)="showRaiseOptions()">
RAISE
<h3 class="text-on-btn-ch"> R</h3>
</button>
</ng-container>
你也可以使用 [hidden]='!displayRaiseBtn'
按钮,但我推荐第一个选项。
我的angular9项目中有一个按钮如下
<button *ngIf="showRaiseButton()" [ngClass]="unlockRaiseButton()" (click)="showRaiseOptions()">RAISE
<h3 class="text-on-btn-ch"> R</h3>
</button>
这个按钮是根据ngif里面函数的return值显示的
showRaiseButton(){
return this.actionState === 'actBettedPot' || this.actionState === 'actNotBettedPot'
|| this.actionState === 'folded' || this.actionState === 'called'
|| this.actionState === 'checked' || this.actionState === 'bet'
|| this.actionState === 'raised';
}
我需要在点击的时候隐藏这个按钮button.The点击如下
showRaiseOptions(){
if (this.unlockRaiseBtn){
this.showRaiseOption = true;
this.showBetOption = false;
this.displayRaiseBtn = false;
}
}
我该怎么做task.Please帮助
我会为按钮创建一个变量,它看起来像这样
showBtn: boolean;
showRaiseButton(){
if (this.actionState === 'actBettedPot' || this.actionState === 'actNotBettedPot'
|| this.actionState === 'folded' || this.actionState === 'called'
|| this.actionState === 'checked' || this.actionState === 'bet'
|| this.actionState === 'raised';) {
this.showBtn = true
}
return
}
然后在按钮上单击添加另一个操作,如下所示:
showRaiseOptions(){
if (this.unlockRaiseBtn){
this.showRaiseOption = true;
this.showBetOption = false;
this.displayRaiseBtn = false;
this.showBtn = false
}
}
<button ngIf="showBtn" (click)="showRaiseoptions()"></button>
但是,如果您必须在代码中的其他地方调用 ShowRaiseButton() ,当某个动作发生时可能是 this.actionState 值更改或 ngOnInit 取决于您的代码的其余部分
您应该使用外部条件在您的视图中显示或隐藏一个部分,ng-container 不会将 html 标记作为 div
或 ...
例如你可以这样使用它:
displayRaiseBtn: boolean = true;
<ng-container *ngIf="displayRaiseBtn">
<button *ngIf="showRaiseButton()" [ngClass]="unlockRaiseButton()" (click)="showRaiseOptions()">
RAISE
<h3 class="text-on-btn-ch"> R</h3>
</button>
</ng-container>
你也可以使用 [hidden]='!displayRaiseBtn'
按钮,但我推荐第一个选项。