我的代码:
User 1 <span
class="label label-danger label-as-badge"
data-ng-repeat="(key,value) in url | filterBy:['ddvalue1']:'User 1' | countBy:'ddvalue1'">{{value}}
</span>
场景:(使用Angular-Filter)
我使用filterBy和countBy过滤器的组合来获取下拉值。默认下拉值设置为用户1 ,当用户从下拉列表中选择一个值时,其值会发生变化,之后该值永远不会是用户1 示例(默认值)用户1下拉值是hi,你好,嘿。一旦用户选择了这些值中的任何一个,ddvalue1字段就会在DB中更新,用户以后只能在下拉列表中选择可用值
使用上述过滤器的目的是显示徽章。当用户从下拉列表中选择值时,徽章值减少。示例I最初将5个下拉列表设置为用户1,因此徽章值为5,一旦选择了新的下拉值,徽章值将减少为4。
问题是当全部下拉值改变时,filterBy过滤器无法找到用户1,因此计数值不会更新。所以没有得到0没有显示任何东西。有没有办法设置默认值?
我尽力解释,我也附上了图片。我为另一个下拉列表编写了相同的过滤器,唯一的变化是用户2的默认值。正如您在图像中看到的那样,面板应该为用户1显示徽章的值为1和0和用户2分别,但由于它找不到过滤器,它什么都不显示。我尝试使用三级运算符,同时显示输出,但我不知道我应该比较**值** {{value&gt; 0?值:0}} OR {{value == undefined? 0:值}}