【问题标题】:Filtering in angularjs inside ng-repeat在 ng-repeat 中过滤 angularjs
【发布时间】:2015-04-28 12:47:04
【问题描述】:

我试图在 ngRepeat 中进行过滤,但使用 filter 的所有过滤器总是出现相同的错误,我在这里输入代码和错误:

HTML:

<input type="text" ng-model="searchOd.name"/>
<li ng-repeat="od in opdata[odTag] | filter:searchOd as odFiltered">

错误:

TypeError: boolean is not a function
at angular.min.js:16709
at $parseFilter (angular.min.js:12155)
at Object.regularInterceptedExpression (angular.min.js:12851)
at Scope.$get.Scope.$digest (angular.min.js:14235)
at Scope.$get.Scope.$apply (angular.min.js:14506)
at done (angular.min.js:9659)
at completeRequest (angular.min.js:9849)
at XMLHttpRequest.requestLoaded (angular.min.js:9790)

我尝试使用 {{opdata[odTag] | 导出 opdata[odTag] json}} 并放入 plunkr 但在 plunkr 中它可以工作!我做错了什么?

这就是我现在没有filter的情况:

.filter('byDistrict', function() {
    return function(items, id_district) {
        var filtered = [];
        if(!id_district) return items;
        angular.forEach(items, function(item) {
            if(item.id_district == id_district) filtered.push(item);
        });
        return filtered;
    }
})

提前致谢!

编辑:

正如 plunkr 中所说,它有效,但我放在这里:plunkr

【问题讨论】:

  • 请分享您的 plunkr
  • 如果 ng-model 是“searchOd.name”,过滤不应该也用“{name: searchOd.name}”吗?只是一个可能的想法......
  • @DonJuwe 使用 plunkr 更新,但在 plunkr 中它可以工作:'(
  • I try to export opdata[odTag] using {{opdata[odTag] | json}} and put in in a plunkr but in plunkr it works!! -- 你这个笨蛋好像和你这里说的有点不一样。能不能说的清楚一点。
  • opdata[odtag] 是通过 $http 设置的,所以我使用了 {{ opdata[odtag] | json }} 在我的模板中将数据导入 plunkr,我唯一想要的就是通过输入数据进行过滤,谢谢!

标签: javascript angularjs filtering


【解决方案1】:

您的代码没有问题。但是您使用的是 Angular 1.2.x,其中“作为结果”功能是 Angular 1.3+ 的一部分

【讨论】:

  • 也很抱歉,在我的网络中我使用的是 angular 1.3.x
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-16
  • 2018-01-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多