gpt4 book ai didi

angularjs - Firebase 和 AngularJS 中的基本查询

转载 作者:行者123 更新时间:2023-12-05 00:22:29 25 4
gpt4 key购买 nike

我有一个看起来像这样的 Firebase:

{
"jobs" : {
"-Jnbc60FQGiKUubz0u6e" : {
"Description" : "The sink has a leaky faucet!",
"uid" : "simplelogin:4"
},
"-Jnbc60FQGiKUubz0u6e" : {
"Description" : "The microwave is broken",
"uid" : "simplelogin:6"
},
"-Jnbc60FQGiKUubz0u6e" : {
"Description" : "Window Cracked",
"uid" : "simplelogin:6"
},
}
}

我试图理解 Firebase 中的查询,但我真的很困惑。

我想做的是相当于这个 SQL 查询:
SELECT * FROM jobs WHERE uid="simplelogin:6"
这是我在Angular中的位置:
var firebase = new Firebase(firebaseURL);
var jobs = firebase.child('jobs');

// BIND FIREBASE DATA TO LOCAL VARIALBES FOR 3 WAY DATA BINDING
$firebaseObject(jobs).$bindTo($scope, 'Jobs');

这会引入我可以访问的所有作业,但我需要以某种方式对其进行过滤,然后将该变量绑定(bind)到 $scope.Jobs多变的。

那将如何实现?

最佳答案

我有一些建议:

  • 查看 Firebase Query documentation .具体来说,
  • .orderByChild()
  • .equalTo()
  • Querying Data section of 'Retrieving Data' in the Web Guide

  • 因此,您可以通过组合 .orderByChild() 来实现您的目标。和 .equalTo()像这样:

    var firebaseRef = new Firebase(firebaseURL);

    var userId = "simplelogin:6";
    var jobs = firebaseRef.child("jobs").orderByChild("uid").equalTo(userId);

    var jobsObject = $firebaseObject(jobs);
    jobsObject.$bindTo($scope, "jobs").then(function(){
    console.log("jobsObject bound to $scope.jobs");
    });

    关于angularjs - Firebase 和 AngularJS 中的基本查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29833224/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com