从ng-filter angularjs中排除_id字段

时间:2015-09-13 07:37:53

标签: javascript angularjs mongodb meanjs

我使用meanjs来构建应用程序。 我在表上使用ng-filter来过滤我的数据。它工作得很好唯一的问题是我不想在集合的_id字段上进行过滤,因为默认它会搜索所有字段,所以我想从过滤器中排除_id。有什么方法可以实现吗?

提前致谢。

2 个答案:

答案 0 :(得分:0)

感谢dfsq

最终取得了所需的结果:

$rootScope.filterResults = function(queryString){
        return function(results){
            if(queryString)
            {
                var keyList = Object.keys(results);
                for (var i = 0; i <=keyList.length; i++) {
                    if(keyList[i]!='_id' && !angular.isObject(results[keyList[i]]))
                    {

                        if(keyList[i]=='enabled')
                        {
                            if(queryString.toLowerCase()=='enabled' && results[keyList[i]]){
                                return true;
                            }
                            if(queryString.toLowerCase()=='disabled' && !results[keyList[i]]){
                                return true;
                            }
                        }
                        else
                        {
                            if(results[keyList[i]] && results[keyList[i]].toString().toLowerCase().indexOf(queryString.toLowerCase()) != -1)
                                return true;
                        }
                    }
                }
                return false;
            }
            return true;
        }
    };

答案 1 :(得分:0)

    Object.prototype.rid = function() {
        var obj = this;
        obj.id = this._id;
        delete this._id;
        return obj;
    }
  $scope.yourObject.rid();