なぜ機能しないのですか。
<li ng-if="!area"></li>
以来、少し非論理的な感じ
<li ng-if="area"></li>
うまく動作します。
「エリア」は、スコープ内でtrue/falseとして定義されています。これに対する回避策はありますか? ng-show/ng-hideは両方ともDOMでアイテムをレンダリングするため、使用しない方がいいでしょう。
これを使って
ng-if = "area == false"
OR
ng-if = "area == true"
これは誰かを助けるかもしれない
このように使用する
<div ng-if="data.IsActive === 1">InActive</div>
<div ng-if="data.IsActive === 0">Active</div>
これを試してください:
<div ng-if="$scope.length == 0" ? true : false></div>
および表示または非表示
<div ng-show="$scope.length == 0"></div>
それ以外の場合は非表示になります
- - - - - - - - -または - - - - - - - - - - - - -
$ ctrlを使用している場合、コードは次のようになります。
これを試してください:
<div ng-if="$ctrl.length == 0" ? true : false></div>
および表示または非表示
<div ng-show="$ctrl.length == 0"></div>
それ以外の場合は非表示になります
angular 1では、ng-show
およびng-hide
を使用できます。あなたの場合は、ng-hide
を使用します。例えば:
<li ng-hide="area"></li>
$ scopeを使用していない場合、areaの代わりに$ ctrl.areaまたは$ scope.areaを使用する必要があります