从AngularJS中的Firebase更新Real-Time中的信息

时间:2016-07-14 09:12:50

标签: angularjs firebase firebase-realtime-database

我使用AnguarJS对来自Firebase的节目信息进行了应用。目前,信息在刷新页面后更新,但我想实时更新我的​​信息。

这是我的角度代码:

var root = angular.module('root',["services", "firebase"]);
    root.controller("root4",['$sce', "$scope", function($sce,$scope){ 
        var ref = new Firebase("https://web-quickstart-8326d.firebaseio.com");
        var locationRef = rootRef.child('location');
        locationRef.once("value", function(snapshot) {
            $scope.value = snapshot.val();
            $scope.$apply(); 

            if($scope.value=="col6"){
                var currentMessageRef = rootRef.child('currentMessage');
                currentMessageRef.once("value", function(snapshot) {
                    $scope.html = snapshot.val();
                    $scope.trustedHtml = $sce.trustAsHtml($scope.html);
                });
            } else if($scope.value!="col6"){
                $scope.html  = "No value in db";
                $scope.trustedHtml = $sce.trustAsHtml($scope.html);
            }
        });
}]);

我在我的代码中插入了一个发布信息的条件,但这并不重要......所有我想要的是实时更新信息而不重新加载我的页面。

谢谢你的帮助!

1 个答案:

答案 0 :(得分:2)

函数once触发一次,然后不再触发。这就是为什么您的信息不会更新的原因。请使用on来订阅更改。更多信息:https://firebase.google.com/docs/database/web/retrieve-data#listen_for_events