将数据异步加载到控制器

时间:2015-09-19 18:18:10

标签: angularjs firebase angularfire

我目前正在学习AngularJS和类似的东西,今天我遇到了一个问题(可能是异步)。 我正在尝试做的是使用Angular工厂从Firebase获取一些数据,然后在控制器中使用这些数据。

App.factory('Jobs', ['$firebaseObject', function($firebaseObject) {
  var ref = new Firebase('https://myapp.firebaseio.com/Jobs');
  return $firebaseObject(ref);
}]);

App.controller('JobsController', ['$scope', 'Jobs', function($scope, Jobs) {
  Jobs.$bindTo($scope, 'allJobs');
  console.log($scope.allJobs);
}]);

这工作得很好。当我将{{ allJobs | json }}放入模板中时,它会在几秒钟后更新。问题是控制器$scope.allJobs返回未定义(可能是因为Firebase的响应迟到了代码执行的时间。

我的问题是,如何编写它,所以我可以直接在控制器中访问$ scope.allJobs?

0 个答案:

没有答案