ng-show内部ng-repeat实例无法正常工作

时间:2016-09-07 17:58:46

标签: angularjs

有人可以帮我弄清楚如何让ng-show在ng-repeat项目中工作吗?有时会出现“nNumber”,有时候不会出现ng-show。我正拉着我的头发试图让它发挥作用。先感谢您。

<option ng-repeat="asset in assets" value="{{asset.id}}">
{{asset.assetName}} 
<span ng-show="asset.nNumber">({{asset.nNumber| uppercase}})</span>
</option>

3 个答案:

答案 0 :(得分:0)

ng-show对布尔值起作用,如果它是真的,我猜nNumber不是布尔值。如果它不是布尔值,你需要检查它是否为空,

<span ng-show="asset.nNumber !=null">({{asset.nNumber| uppercase}})</span>

答案 1 :(得分:0)

尝试检查它是否未定义:它将涵盖资产对象中不存在的属性。

<span ng-show="asset.nNumber != null">({{asset.nNumber| uppercase}})</span>

您还应该考虑使用ng-if:为什么在属性不存在的情况下使用过滤器来nNumber(并隐藏它)?使用ng-如果你将它从dom中删除,它将不会应用任何过滤器。

答案 2 :(得分:0)

如果值为0,如果可以隐藏它,则可以尝试此操作。

<option ng-repeat="asset in assets" value="{{asset.id}}">
    {{asset.assetName}} 
    <span ng-show="!!asset.nNumber">({{asset.nNumber| uppercase}})</span>
</option>