Angular 2:使用 material-icons 设置带有条件内容的按钮
Angular 2: Setting a button with conditional content with material-icons
嗯,我正在学习 angular 2,我从开发登录表单开始,但我在制作带有条件内容的按钮时遇到了问题。
此补充模板的代码如下:
<button class="login-button" (click)="checkData()">
{{isLoading ? "loading...":"Log In" }}
</button>
它检查 isLoading 布尔值,并将内部 html 条件设置为此布尔值。正确的?
是的,这呈现得很好,如果 isLoading 为真,则按钮的条件内容为 "loading...",如果为假,则为 "Log In"。
但是如果想在按钮内添加一些 google material 图标,它将停止工作:
<button class="login-button" (click)="checkData()">
{{isLoading ? "<i class='material-icons'>spinner</i>":"Log In <i class='material-icons'>arrow_forward</i>" }}
</button>
只是行不通。它呈现一个内容为“{{isLoading ? "spinner":"Log In arrow_forward" }}”;
的按钮
如何将图标的 html 添加到可能的结果中?
试试这个 -
<button class="login-button" [disabled]="isLoading" (click)="checkData()">
<i [hidden]="!isLoading" class='material-icons'>spinner</i>
<span [hidden]="isLoading">Log In <i class='material-icons'>arrow_forward</i></span>
</button>
您可以使用ngSwitch
<button class="login-button" (click)="checkData()" [ngSwitch]="isLoading">
<i class='material-icons' *ngSwitchCase="true">spinner</i>
<span *ngSwitchCase="false">
Log In <i class='material-icons'>arrow_forward</i>
</span>
</button>
嗯,我正在学习 angular 2,我从开发登录表单开始,但我在制作带有条件内容的按钮时遇到了问题。
此补充模板的代码如下:
<button class="login-button" (click)="checkData()">
{{isLoading ? "loading...":"Log In" }}
</button>
它检查 isLoading 布尔值,并将内部 html 条件设置为此布尔值。正确的?
是的,这呈现得很好,如果 isLoading 为真,则按钮的条件内容为 "loading...",如果为假,则为 "Log In"。
但是如果想在按钮内添加一些 google material 图标,它将停止工作:
<button class="login-button" (click)="checkData()">
{{isLoading ? "<i class='material-icons'>spinner</i>":"Log In <i class='material-icons'>arrow_forward</i>" }}
</button>
只是行不通。它呈现一个内容为“{{isLoading ? "spinner":"Log In arrow_forward" }}”;
的按钮如何将图标的 html 添加到可能的结果中?
试试这个 -
<button class="login-button" [disabled]="isLoading" (click)="checkData()">
<i [hidden]="!isLoading" class='material-icons'>spinner</i>
<span [hidden]="isLoading">Log In <i class='material-icons'>arrow_forward</i></span>
</button>
您可以使用ngSwitch
<button class="login-button" (click)="checkData()" [ngSwitch]="isLoading">
<i class='material-icons' *ngSwitchCase="true">spinner</i>
<span *ngSwitchCase="false">
Log In <i class='material-icons'>arrow_forward</i>
</span>
</button>