AngularJSが提供する関数ng-show
と関数を使用してHTMLを表示/非表示にしようとしています。ng-hide
ドキュメントによると、これらの関数のそれぞれの使用法は次のとおりです。
ngHide – {expression}-式がtrueの場合、要素はそれぞれ表示または非表示になります。ngShow – {expression}-式が真である場合、要素はそれぞれ表示または非表示になります。
これは、次のユースケースで機能します。
<p ng-hide="true">I'm hidden</p>
<p ng-show="true">I'm shown</p>
ただし、オブジェクトのパラメータを式として使用する場合、ng-hide
およびng-show
には正しいtrue
/false
値が与えられますが、値はブール値として扱われないため、常に次の値を返し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をよりよく理解している人が私を助けてくれることを望んでいましたか?