2016-10-18 6 views
1

いくつかのJSONデータに応じて、ボタンに異なるテキストを表示したいとします。Angular2 [innerHTML] else validationの場合

例(もちろん動作していない):[オブジェクトとして表示される[ngClass]のアプローチを使用して

<button [ngClass]='{"btn-success": data.complete, "btn-primary": !data.complete}'>Some text</button> 

<button [innerHTML]='"Male" if user.gender==1 else "Female"'></button> 

私は、この機能は、すでに例えば[ngClass]でexisits知っています:オブジェクト]、したがって動作しません。

答えて

6

使用三元表現

<button [innerHTML]='user.gender == 1 ? "Male" : "Female"'></button> 

はとにかくあなたは、このためにinnerHtmlは必要ありません。私は次のようにします:

<button>{{ user.gender == 1 ? "Male" : "Female" }}</button> 
0

もっと柔軟な方法は、ボタンのテキストとして変数にバインドするだけです。この

<button>{{buttonText}}</button>

とあなたの.tsファイルに、ちょうどあなたのJSON値に基づいてbuttonTextの値を設定するよう