Angularjs firebase数组对象始终显示false

时间:2016-09-10 01:57:52

标签: javascript html angularjs firebase firebase-realtime-database

我在console.log($ scope.statusbaca)中从firebase检索数据时遇到问题,它显示2个查询true和false。但是当它在应用程序中显示时它只显示错误。对不起,我的英语不好。英语不是我的母语。希望你能理解我的问题 enter image description here 应用程序返回false但控制台日志显示为true和false

这是我的代码

模板

<div ng-repeat= "item in users">
            <div class="list card" style="padding:1%;">
                <div class="col-50" style="float:left;">

                <h5>{{item.displayName}} - {{item.handphone}}</h5>
                <h5>{{item.email}}</h5>  
                </div>
                  <div class="col-33" style="float:right; position: relative;" ng-repeat = "datas in statusbaca">

                    <h5>{{datas}}</h5>

                </div>
            </div>
        </div>

控制器

 var rootRef = new Firebase('https://example-app.firebaseio.com/');
    var childUsers = rootRef.child('users');
    var childDate = rootRef.child('tanggal');
    var rekapId = $stateParams.rekapId;
    console.log(rekapId);      

  childDate.child(rekapId).child('tanggalBaca').once('value',function(snap){

        $timeout(function() {
             var snapshot= snap.val();
            $scope.tanggal = snapshot;       
            console.log($scope.tanggal);
            myAfterFunction();
         });
    })

    function myAfterFunction(){

   var dates = $scope.tanggal;
   console.log(dates);
   var rekapUsers = childUsers.on('value', function(snapshot){
        snapshot.forEach(function(childSnapshot){
            var key = childSnapshot.key();
            console.log(key);
            var childStatus = childUsers.child(key+'/status/'+dates);
            childStatus.on('value',function(grandsnap){
                var snapval =grandsnap.val();
                $scope.statusbaca = snapval;
                $scope.key = key;
                console.log($scope.statusbaca);
                console.log($scope.key);
              })

        })
        var snapshotVal = snapshot.val();          
        $scope.users =snapshotVal;
        console.log($scope.users);
    })     

    }

知道我的代码有什么问题以及如何解决这个问题?感谢

1 个答案:

答案 0 :(得分:0)

我不确定这是否会解决它但你的div元素是不平衡的。 你应该添加一个像这样的结束div元素,

<div class="col-33" style="float:right; position: relative;" ng-repeat = "datas in statusbaca">

   <h5>{{datas}}</h5>

 </div>

另外,我找不到JavaScript中引用的一些变量而不是你的 像这样的值输出:

<h5>{{datas}}</h5>

你应该这样:

<h5>{{datas.THE NAME OF YOUR KEY:VALUE PAIR}}</h5>

我无法测试它,因为你正在使用firebase但是,我会尽快完成你的代码。