角度ng-如果不是真的

时间:2014-10-08 20:53:24

标签: angularjs angular-ng-if

为什么这不起作用。

<li ng-if="!area"></li>

感觉有点不合逻辑

<li ng-if="area"></li>

工作正常。

'area'在范围内定义为true / false 有没有解决方法呢?我不想使用ng-show / ng-hide,因为它们都在DOM中呈现项目。

6 个答案:

答案 0 :(得分:66)

使用此

  

ng-if =&#34; area == false&#34;

OR

  

ng-if =&#34; area == true&#34;

这可能有助于某人

答案 1 :(得分:6)

像这样使用

<div ng-if="data.IsActive === 1">InActive</div>
<div ng-if="data.IsActive === 0">Active</div>

答案 2 :(得分:2)

试试这个:

<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>

否则会隐藏

答案 3 :(得分:0)

在角度1中,您可以使用ng-showng-hide。在您的情况下,您可以使用ng-hide。例如:

<li ng-hide="area"></li>

答案 4 :(得分:0)

您没有使用$ scope 你必须使用$ ctrl.area或$ scope.area而不是area

答案 5 :(得分:0)

仅用于True:

<li ng-if="area"></li>

,如果是,则为

<li ng-if="area === false"></li>