有没有办法使用ng-if来测试一个变量是否被定义,而不只是它的真实性?
在下面的示例(live demo)中,HTML仅显示红色项目的运费,因为item.shipping是定义的且非零。我也想显示蓝色物品的成本(运输已定义但为零),但不显示绿色物品(运输未定义)。
JavaScript:
app.controller('MainCtrl',function($scope) { $scope.items = [ { color: 'red',shipping: 2,},{ color: 'blue',shipping: 0,{ color: 'green',} ]; });
HTML:
<body ng-controller="MainCtrl"> <ul ng-repeat='item in items'> <li ng-if='item.color'>The color is {{item.color}}</li> <li ng-if='item.shipping'>The shipping cost is {{item.shipping}}</li> </ul> </body>
我试着做ng-if =’angular.isDefined(item.shipping)’,但它没有工作。也没有ng-if =’typeof(item.shipping)!== undefined’。
尝试这个:
item.shipping!==undefined