当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


AngularJS ng-if用法及代码示例


AngularJS中的ng-if指令用于基于表达式删除或重新创建HTML元素的一部分。 ng-if与ng-hide不同,因为它可以完全删除DOM中的元素,而不仅仅是隐藏元素的显示。如果其中的表达式为false,则删除该元素;如果为true,则将该元素添加到DOM。

用法:

<element ng-if="expression"> Contents... </element>

如果expression返回true,则创建该元素;如果expression返回false,则将该元素完全删除。


范例1:本示例在单击按钮后更改内容。

<!DOCTYPE html> 
<html> 
      
<head> 
    <title>ng-hide Directive</title> 
      
    <script src= 
"https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"> 
    </script> 
</head> 
  
<body ng-app="geek" style="text-align:center"> 
      
    <h1 style="color:green"> 
        GeeksforGeeks 
    </h1> 
      
    <h2>ng-if Directive</h2> 
      
    <div ng-controller="app as vm"> 
        <div ng-if="!vm.IsShow"> 
            <input type="button" class="btn btn-primary"
                    ng-click="vm.IsShow=!vm.IsShow"
                    value="Sign in"> 
                      
            <p>Click to Sign in</p> 
        </div> 
          
        <div ng-if="vm.IsShow"> 
            <button class="btn btn-primary"
            ng-click="vm.IsShow=!vm.IsShow"> 
                Sign out 
            </button> 
              
            <p> 
                GeeksforGeeks is the computer  
                science portal for geeks. 
            </p> 
        </div> 
    </div> 
      
    <script> 
        var app = angular.module("geek", []); 
        app.controller('app', ['$scope', function ($scope) { 
            var vm = this; 
        }]); 
    </script> 
</body> 
  
</html>

输出:
在点击按钮之前:
ngif
单击按钮后:
ngif

范例2:此示例在选中复选框时添加了一些内容。

<!DOCTYPE html> 
<html> 
  
<head> 
    <title>ng-hide Directive</title> 
      
    <script src= 
"https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"> 
    </script> 
  
    <style> 
        .geek { 
            border:1px solid black; 
            padding:10px; 
            font-size:15px; 
            color:white; 
            width:50%; 
            background:green; 
        } 
    </style> 
</head> 
  
<body ng-app style="padding:30px"> 
      
    <h1 style="color:green"> 
        GeeksforGeeks 
    </h1> 
      
    <h2>ng-if Directive</h2> 
      
    <div> 
        <input type="checkbox" ng-model="showDiv" /> 
          
        <label for="showDiv"> 
            Check it 
        </label> 
          
        <br><br> 
          
        <div class="geek" ng-if="showDiv"> 
            GeeksforGeeks is the computer science 
            portal for geeks. 
        </div> 
    </div> 
</body> 
  
</html>

输出:
在将复选框标记为选中之前:
ngif
将复选框标记为选中后:
ngif



相关用法


注:本文由纯净天空筛选整理自Vishal Chaudhary 2大神的英文原创作品 AngularJS | ng-if Directive。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。