2016-07-14 79 views
1

我制作了一个应用程序,用于从Firebase和AnguarJS获取展示信息。目前,刷新页面后信息会更新,但我想实时更新信息。从AngularJS的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); 
      } 
     }); 
}]); 

我在代码中插入了发布信息的条件,但是这并不重要......我要的是更新而不会刷新我的网页中的实时信息。

谢谢你的帮忙!

+0

您是否在分配实时未显示的范围变量后尝试调用'$ scope。$ apply()'?另请参阅 http://stackoverflow.com/questions/38366955/firebase-3-angularfire-2-in-ionic-app-data-not-updating-real-time-live-update/38368256#38368256 –

+0

$范围。 apply(),它只是用于识别插入消息的必要位置。实际上,消息它显示在如果condiion。我想更新消息。感谢您的回复! :) –

+0

@DiaconuEduard添加您的html plz。如果你设置了一个[jsFiddle](https://jsfiddle.net/vyp76wj1/17/),那将会非常好。 – adolfosrs

回答