2016-09-09 4 views
0

私はブールスコープ変数のオフに基づいて、さまざまな宣伝文句をレンダリングする角度のテンプレートを持っている:角度:テキスト文字列をアンチパターンで管理するためにng-ifを使用していますか?

<p ng-if="::verify">Blah blah verification</p> 
<p ng-if="::!verify">Blah blah contact us</p> 

私は角に比較的新しいですし、まだテンプレートを維持するためにクリーンな方法を把握しようとしています。このアプローチは反パターンですか?これには他の方法がありますか?

+0

唯一のオプションはng-show/ng-hideです。私が知る限り、ここでの唯一の違いは、ng-ifがDOMから要素を削除することです – Clint

答えて

0

私は比較的角張っているので、アンチパターンであるかどうかは分かりません。私がこれまで使用してきたリソースから、showとhideは、ifsを清潔にするのが好まれます。

あなたが実際に評価する2つのタグと式を実際に持っている場合は、その評価が際立っています。だから...

他の方法がありますか?

はい、この場合、異なる文字列の最後を返す関数を追加し、1つのタグを選択します。角度制御コードで

<p>Blah blah {{ctrl.isValid()}}</p>

:例えば

... 
self.valid = false; 
self.isValid = function() { 
    return self.valid ? "verification" : "contact us"; 
}; 
... 

はそれがあれば、ショー、または非表示(私見)のいずれかよりもきれいだと思われます。

関連する問題