我收到错误,随机,有时会发生,有时则不会。 我无法确定要解决的问题。
有谁知道错误原因或如何预防?
我的代码:
angular.module('VigiApp').controller('FeedsController', ['$scope', 'gettextCatalog', 'FirebaseURL', '$ngBootbox', function($scope, gettextCatalog, FirebaseURL, $ngBootbox) {
$scope.contents = [];
isSpinnerBar(false);
$scope.init = function(){
isSpinnerBar(true);
// Get a database reference to our posts
//auth
var fbAuth = FirebaseURL.getAuth();
//Ref
var norm = new Firebase.util.NormalizedCollection(
FirebaseURL.child('contents'),
[FirebaseURL.child('categories'), 'category', 'contents.category_id']
);
// get a reference we can use like a normal Firebase instance
ref = norm.select('contents.category_id',
'contents.dt_created',
'contents.num_comment',
'contents.num_favorite',
'contents.text',
'contents.photos',
'contents.user_id',
{key: 'category.name.$value', alias: 'category_name'},{key: "category."+$scope.currentLanguage+".$value", alias: 'category_name_language'},{key: 'category.icon.$value', alias: 'category_icon'}).ref();
// Attach an asynchronous callback to read the data at our posts reference
ref.orderByChild("dt_created").limitToFirst(2).on("value", function(snapshot) {
console.log(snapshot.val());
var res = snapshot.val();
$scope.$apply(function() {
$scope.contents = res;
isSpinnerBar(false);
isButtonActivedFeed();
});
}, function (errorObject) {
console.log("The read failed: " + errorObject.code);
isSpinnerBar(false);
});
}
$scope.share = function(e){
}
}]);
警告:
FIREBASE WARNING: Exception was thrown by user callback. Error: [$rootScope:inprog] http://errors.angularjs.org/1.4.7/$rootScope/inprog?p0=%24digest
....
答案 0 :(得分:3)
好的,为帖子道歉,我在谷歌搜索后找到了解决方案。
我正在寻找firebase或firebase-util,但在页面之间导航时我的角度是错误的。
解决方案对我有用:
var res = snapshot.val();
$timeout(function(){
$scope.$apply(function() {
$scope.contents = res;
isSpinnerBar(false);
isButtonActivedFeed();
});
});
解决方案,原因: AngularJS : Prevent error $digest already in progress when calling $scope.$apply()
如果其他人有同样的问题/疑问,我会保留这个问题。