angularjs过滤器中的空值

时间:2018-06-06 03:21:28

标签: angularjs smart-table

我正在使用智能表过滤器。这在3天前非常有效,突然之间这一行:propertyValue.toLowerCase().indexOf(searchTextSplit[y]) !== -1为变量 propertyValue 提供了 Null 值。我的桌子也很完美。如果我删除我的过滤器,我的stSearch也可以工作。但我需要这个过滤器进行严格搜索。

App.filter('filterByObjectName', function ($filter) {
    return function(input, predicate){
        var returnArray = [];
            angular.forEach(predicate, function(value, key){
                var searchTextSplit = value.toLowerCase().split(' ');
                for (var x = 0; x < input.length; x++) {
                    var count = 0;
                    for (var y = 0; y < searchTextSplit.length; y++) {
                        let propertyValue = input[x].ItemName;
                        console.log(propertyValue)
                        console.log(propertyValue.indexOf(searchTextSplit[y]) == -1)
                        if (propertyValue.toLowerCase().indexOf(searchTextSplit[y]) !== -1) {
                            count++;
                        }
                    }
                    if (count == searchTextSplit.length) {
                        returnArray.push(input[x]);
                    }
                }
            });
        return returnArray;
    }
});

这里是我的调试,第113行是propertyValue结果,你可以看到它变为null。

Debug Image

0 个答案:

没有答案