angularjs - 在 Firebase 中查询多个值,类似于 IN() SQL 功能

标签 angularjs firebase angularfire

我有一个如下所示的数组:

validZipCodes = [
  "84606",
  "84605",
  "84601"
]

我正在查询这样的一些数据:

var Jobs = firebase.child('Jobs');

我尝试过这个:

var Jobs = firebase.child('Jobs').orderByChild('ZipCode').equalTo($scope.validZipCodes);

但它返回了一个错误,指出它是无效的数据类型,无论如何都可以说:

var Jobs = firebase.child('Jobs').orderByChild('ZipCode').inArray($scope.validZipCodes);

或者类似的东西。

请注意,这是数组比较,而不是查询对象中的文本。

最佳答案

这是我最终的做法:

使用 foreach 命令,您可以轻松地操作数据,然后将其插入数组中,以根据需要重新创建数据集合。

$scope.validZipCodes = [];
$scope.validContractorJobs = [];

var Jobs = firebase.child('Jobs');

contractorJobs.on('value', function(snap) {
            snap.forEach(function(job) {
                angular.forEach($scope.validZipCodes, function(value, key) {
                    if(job.val().ZipCode == value) {
                        $scope.validContractorJobs.push(job.val());
                    }
                });
            });
        });

关于angularjs - 在 Firebase 中查询多个值,类似于 IN() SQL 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30132451/

相关文章:

javascript - 如何根据从 Angularjs 获得的结果更改 HTML 中的图标(Font Awesome)

javascript - 一个页面中有多少个 watch ?

ios - 从 Firebase 打印数据

firebase - 如何过滤带有文档ID的流?

angularjs - Firebase数据已标准化。我应该如何基于此结构获取集合?

火力地堡/角火 : accessing static values of observables

angularjs - 从 promise 结果返回字符串

angularjs - 如何集成 ocLazyLoad 和 Webpack 或按 View 进行代码分割

javascript - 如何在 Firebase 托管中处理动态 URL 路由

angular - 未捕获错误 : Unexpected value 'AngularFireDatabase' imported by the module 'AppModule' . 请添加 @NgModule 注解