AngularJSが提供するng-show
およびng-hide
関数を使用して、一部のHTMLを表示/非表示にしようとしています。
ドキュメントによると、これらの関数のそれぞれの使用法は次のとおりです。
ngHide – {expression}-式が真である場合、要素はそれぞれ表示または非表示になります。ngShow – {expression}-式が真である場合、要素はそれぞれ表示または非表示になります。
これは、次のユースケースで機能します。
<p ng-hide="true">I'm hidden</p>
<p ng-show="true">I'm shown</p>
ただし、オブジェクトのパラメーターを式として使用するng-hide
と、とにng-show
は正しいtrue
/ false
値が与えられますが、値はブール値として扱われないため、常にreturnを返しfalse
ます。
ソース
<p ng-hide="{{foo.bar}}">I could be shown, or I could be hidden</p>
<p ng-show="{{foo.bar}}">I could be shown, or I could be hidden</p>
結果
<p ng-hide="true">I should be hidden but I'm actually shown</p>
<p ng-show="true">I should be shown but I'm actually hidden</p>
これはバグであるか、正しく実行していません。
式としてオブジェクトパラメータを参照することに関する相対的な情報が見つからないので、AngularJSをよく理解している人が手助けしてくれることを望んでいましたか?