Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ng类在数据更改时不刷新_Javascript_Angularjs_Ionic Framework_Firebase - Fatal编程技术网

Javascript ng类在数据更改时不刷新

Javascript ng类在数据更改时不刷新,javascript,angularjs,ionic-framework,firebase,Javascript,Angularjs,Ionic Framework,Firebase,我想在数据更改时更改颜色项。我使用以下模板代码: {{myuser.user_name} 添加$scope.$apply();$scope.users.push之后(myUser);行。 Angular应用程序不必管理摘要循环。Firebase与AngularFire库直接集成,AngularFire库管理数据同步和触发$digest 在您的情况下,您可以创建一个$firebaseArray来同步您的更改: angular.module('app', ['firebase']) .con

我想在数据更改时更改颜色项。我使用以下模板代码:


{{myuser.user_name}
添加$scope.$apply();$scope.users.push之后(myUser);行。

Angular应用程序不必管理摘要循环。Firebase与AngularFire库直接集成,AngularFire库管理数据同步和触发
$digest

在您的情况下,您可以创建一个
$firebaseArray
来同步您的更改:

angular.module('app', ['firebase'])
  .constant('FirebaseUrl', '<my-firebase-app>')
  .service('rootRef', ['FirebaseUrl', Firebase])
  .controller('MyCtrl', MyController);

function MyController($scope, rootRef, $firebaseArray) {
  var userRef = rootRef.child('contact').child(authData.uid);
  $scope.users = $firebaseArray(userRef);
}
angular.module('app',['firebase']))
.constant('FirebaseUrl','')
.service('rootRef',['FirebaseUrl',Firebase])
.controller('MyCtrl',MyController);
函数MyController($scope、rootRef、$firebaseArray){
var userRef=rootRef.child('contact').child(authData.uid);
$scope.users=$firebaseArray(userRef);
}

使用AngularFire的优点有两个。首先,您不必管理
$scope.$apply()
。其次,您可以免费获得实时阵列同步。

谢谢,但是,现在我有一个错误:错误:[$rootScope:inprog]$apply已经在进行中,这是因为angular的$apply生命周期已经在进行中。只要做一件事。将其放入超时中,如下所示:setTimeout(function(){$scope.$apply();},1)虽然这可以工作,但它不是推荐的解决方案。用角火代替。我的答案详细说明了如何。谢谢分享…:-)