使用多个条件过滤 ng-repeat
filtering ng-repeat with more than one conditional
我有这个:
<div id="box" ng-repeat="item in produtos | filter:{categoria:busca.categoria,subcategoria:busca.subcat,produto:termoBusca}">
我已经在一定条件下测试过它并且很好,它有效:
filter:{busca.categoria?categoria:busca.categoria}
现在我需要的是不止一个条件,像这样:
filter:{busca.categoria?categoria:busca.categoria} && {busca.subcat?subcategoria:busca.subcat}
正确的写法是什么?
尝试关注
filter:{categoria:(busca.categoria?categoria:busca.categoria) ,subcat: (busca.subcat?subcategoria:busca.subcat)}
过滤器参数可以是一个对象,过滤器对象的属性必须与对象数组的项属性匹配。
来自Angulardocumentation
Filters can be applied to the result of another filter. This is called "chaining" and uses the following syntax: {{ expression | filter1 | filter2 | ... }}
所以,你管一下,就会变成这样:
<div id="box" ng-repeat="item in produtos | filter:categoria:busca.categoria | filter:subcategoria:busca.subcat | filter:produto:termoBusca>
我有这个:
<div id="box" ng-repeat="item in produtos | filter:{categoria:busca.categoria,subcategoria:busca.subcat,produto:termoBusca}">
我已经在一定条件下测试过它并且很好,它有效:
filter:{busca.categoria?categoria:busca.categoria}
现在我需要的是不止一个条件,像这样:
filter:{busca.categoria?categoria:busca.categoria} && {busca.subcat?subcategoria:busca.subcat}
正确的写法是什么?
尝试关注
filter:{categoria:(busca.categoria?categoria:busca.categoria) ,subcat: (busca.subcat?subcategoria:busca.subcat)}
过滤器参数可以是一个对象,过滤器对象的属性必须与对象数组的项属性匹配。
来自Angulardocumentation
Filters can be applied to the result of another filter. This is called "chaining" and uses the following syntax: {{ expression | filter1 | filter2 | ... }}
所以,你管一下,就会变成这样:
<div id="box" ng-repeat="item in produtos | filter:categoria:busca.categoria | filter:subcategoria:busca.subcat | filter:produto:termoBusca>