2016-10-03 72 views
1

我对Angular 2非常陌生,我一直在玩它来学习它。我试图根据布尔值更改屏幕上的某些文本。Angular 2:根据复选框更改一些文本

比方说,我有一个切换复选框,我希望根据切换按钮在屏幕上的某些文本之间来回切换。

<div class="ui toggle checkbox"> 
    <input type="checkbox" [(ngModel)]="version2" name="versionControl"> 
    <label>version2</label> 
</div> 
{{versionText}} 

和组件会是这样的

export class AppComponent { 
    version2:boolean=false; 
    versionText= this.version2 ? "This is Version 1:" : "Switched to Version 2" 
    ... 
} 

当然,因为我在开始时和开始分配值这是行不通的,版本2是假的,即使布尔值更改后,文本没有,因为我不分配它,我想..

我知道我可以做一些onClick函数(或类似的东西)复选框,但我只是想了解是否有一个更容易,更“角度”的方式来完成这一点。

回答

1

您可以使用ngIf

<div class="ui toggle checkbox"> 
    <input type="checkbox" [(ngModel)]="version2" name="versionControl"> 
    <label *ngIf="verion2">This is Version 1:</label> 
    <label *ngIf="!verion2">Switched to Version 2</label> 
</div> 

或只是

<div class="ui toggle checkbox"> 
    <input type="checkbox" [(ngModel)]="version2" name="versionControl"> 
    <label>{{versionText}}</label> 
</div>