有人可以帮我弄清楚如何让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>
答案 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>