首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Angularjs中的另一个Firebase对象过滤Firebase列表

使用Angularjs中的另一个Firebase对象过滤Firebase列表
EN

Stack Overflow用户
提问于 2014-04-14 00:07:12
回答 1查看 426关注 0票数 0

因此,我有一个大的防火墙列表,我想使用绑定到的另一个firebase对象进行筛选。如果我没有将我的'search‘对象绑定到firebase,它会很好地过滤,但是当我绑定到Firebase时,它会返回零结果。

我的控制器:

代码语言:javascript
复制
  .controller('TestResultsCtrl', ['$scope', 'syncData', '$routeParams', '$firebase', '$filter', function($scope, syncData, $routeParams, $firebase, $filter) {
      $scope.id = $routeParams.id;
      syncData('tests/' + $routeParams.id).$bind($scope, 'test');
      syncData('tests/' + $routeParams.id + '/specs').$bind($scope, 'search');
      syncData('diagnoses').$bind($scope, 'all_diagnoses');
   }])

my view:

代码语言:javascript
复制
<a href="" ng-repeat="diagnoses in all_diagnoses | orderByPriority | filter:search" class="list-group-item">{{diagnoses.title}}</a>

一个样本“搜索”对象:

代码语言:javascript
复制
{
  "constant": true,
  "intermittent": true,
  "localized": true,
  "referred": false,
  "region": "hip"
}

“诊断”对象/列表的示例:

代码语言:javascript
复制
{
  "constant": true,
  "intermittent": true,
  "localized": true,
  "referred": false,
  "region": "hip",
  "title": "Hip Osteoarthritis"
},
{
  "constant": true,
  "intermittent": false,
  "localized": false,
  "referred": true,
  "region": "neck",
  "title": "Whiplash"
}

如何使它正确地过滤?

...and,提前谢谢你!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-16 17:29:43

问题可能是从$bind返回的对象包含了几个$方法,这些方法是角想要过滤的。

试试这样的..。

代码语言:javascript
复制
syncData('tests/' + $routeParams.id + '/specs').$bind($scope, 'searchDirty');
$scope.$watch('searchDirty', function (search) {
    $scope.search = angular.fromJson(angular.toJson(search));
});

这将去掉任何$方法/值,并返回数据的原始值。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23050002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档