Javascript 角度自定义过滤器和indexOf条件

Javascript 角度自定义过滤器和indexOf条件,javascript,angularjs,filter,indexof,Javascript,Angularjs,Filter,Indexof,我是电脑新手,正在尝试为AngularJS应用程序构建自定义过滤器 我必须搜索一个整数字符串(cultivos.age),如果该字符串包含mes.age条件,则返回该项。我已经成功地创建了一个返回==值的workingFilter。但我无法编写“indexOf”条件,以便在cultivos.age数组中包含mes.age时返回该项 工作过滤器: angular.module('calendarioFilters',[]).filter('filtroMes',function(){ 返回函数(c

我是电脑新手,正在尝试为AngularJS应用程序构建自定义过滤器

我必须搜索一个整数字符串(cultivos.age),如果该字符串包含mes.age条件,则返回该项。我已经成功地创建了一个返回==值的workingFilter。但我无法编写“indexOf”条件,以便在cultivos.age数组中包含mes.age时返回该项

工作过滤器:

angular.module('calendarioFilters',[]).filter('filtroMes',function(){
返回函数(cultivos,name){
var arrayToReturn=[];
对于(var i=0;i更改此行:

if (item.age.indexOf(this.mes.age) >= -1) {
致:


希望这能有所帮助。

将此angular.module('myFilters',[])更改为angular.module('myFilters'),否则创建第二个筛选器将解除第一个筛选器的绑定。[]导致从头开始重新定义模块。您如何调用筛选器?您可以添加一个JSFIDLE或plunker并提供一个示例吗?为什么在
if
语句中有
=-1
?这基本上是说“抓取所有内容”。因此,我不会认为最终结果是未定义的,但相反,所有内容都是如此。为什么您在第一个筛选器中使用
,而在第二个筛选器中使用
数据
?感谢您的回答:我用您的备注编辑了问题,以查看是否更清晰。我仍然无法使第二个筛选器工作。谢谢。这是一个错误,但是显然不是唯一一个。过滤器仍然不起作用。
    angular.module('calendarioFilters',[]).filter('filtroMes', function(){
    return function(cultivos, name){
    var arrayToReturn = [];        
    for (var i=0; i<cultivos.length; i++){
        if (cultivos[i].age.indexOf(this.mes.age) !== -1)  {
            arrayToReturn.push(cultivos[i]);
        } 
    }      
    return arrayToReturn;
};
     <li ng-repeat="cultivo in cultivos | filtroMes:''">      
if (item.age.indexOf(this.mes.age) >= -1) {
if (item.age.indexOf(this.mes.age) !== -1) {