2016-05-16 115 views
2

在我的数据约会我已经月,周,日,时隙AngularJs NG重复过滤通过数据

在上市的更深层次查看它是不重要的,以显示“周”(但它是重要的其他报告)

为“天”我没有约会滤除天为:

<div ng-repeat="month in appointments.months: | filter:{????:''}"> 
    <div>{{month.name}}</div> 
    <div ng-repeat="week in month.weeks"> <!--Not displaying anything for weeks--> 
     <div ng-repeat="day in weeks.days | filter:{timeslots:''}"> 
    ....</div></div></div> 

过滤器:{时隙:“”}具有抑制天没有约会的理想效果。

我还想从显示器中抑制几个月没有约会。 我尝试过|过滤器:{weeks.days.timeslots:''}没有成功。

是否有直接(内置)方式对angularjs中的值执行深层过滤器,还是必须为此构建自定义过滤器?

+0

你想提供约会数据集吗? – MasoodUrRehman

回答

3

是的,有一种方式存在!

一个特殊性质名称$可以使用(如在{$:“文本”})接受针对对象的任何属性或它的嵌套对象属性的匹配。
可以通过在字符串前加上!来取代谓词。例如{name:“!M”}谓词将返回一个包含属性名称不包含“M”的项目数组。

这里是对filter的解释。

+1

你让我在这里正确的轨道...因为我正在寻找一个“非空”价值的特定属性,我不得不把这一点。 '| filter:{$:{timeslot:''}}' 它将读为_include只包含具有值(或不为空)的时隙属性的对象_ –