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
Angularjs 带有firebase的简单加载数据按钮_Angularjs_Firebase - Fatal编程技术网

Angularjs 带有firebase的简单加载数据按钮

Angularjs 带有firebase的简单加载数据按钮,angularjs,firebase,Angularjs,Firebase,我是firebase的新手,为了测试我的数据源,我正在尝试将Angularjs的简单“loadData”按钮转换为firebase源代码,而不是$http.get调用 基本上,我正在尝试创建类似这样的东西:从JSON Firebase DM中提取数据。但是,我遇到了迷失在翻译中的问题,特别是在我在一个更大的项目中这样做时,该项目已经将控制器加载到一个大文件中: controllersModule.controller('BlogCtrl', ["$scope", "$firebaseArray"

我是firebase的新手,为了测试我的数据源,我正在尝试将Angularjs的简单“loadData”按钮转换为firebase源代码,而不是$http.get调用

基本上,我正在尝试创建类似这样的东西:从JSON Firebase DM中提取数据。但是,我遇到了迷失在翻译中的问题,特别是在我在一个更大的项目中这样做时,该项目已经将控制器加载到一个大文件中:

controllersModule.controller('BlogCtrl', ["$scope", "$firebaseArray",
  function($scope, $firebaseArray) {
  var ref = new Firebase("https:<DATASOURCE>.firebaseio.com/");

  //Nothing Happens
  $scope.loadPosts = function(){
  $scope.Posts = $firebaseArray(ref);
}
  //This Prints in The Console
  ref.on("value", function(snapshot) {
    console.log(snapshot.val());
  },
    function (errorObject) {
      console.log("The read failed: " + errorObject.code);
    });
}]);
状态提供程序构建我的控制器并将其推送到索引页的ng视图中:

 .state('Blog', {
    url: '/blog',
    controller: 'BlogCtrl as posts',
    templateUrl: 'Posts.html',
    title: 'Blog'
  })
我的猜测是,我用上面的函数进行了一些错误的引用调用,但不知道如何用firebase等效函数替换它们。有人能帮忙吗?

AngularFire有,你应该通读一遍。如错误所述,
$firebaseArray
没有
success()
方法。最简单的解决方案是:

$scope.loadPosts = function() {
  $scope.Posts = $firebaseArray(ref);
};
如果要添加错误处理,请使用
$loaded()

AngularFire有,你应该通读一遍。如错误所述,
$firebaseArray
没有
success()
方法。最简单的解决方案是:

$scope.loadPosts = function() {
  $scope.Posts = $firebaseArray(ref);
};
如果要添加错误处理,请使用
$loaded()


嘿,这对我没用。我尝试在我的Posts.html文件中添加一个ng repeat=“post in Posts”,以在单击按钮后收集数据,但什么也没有。奇怪的是,我在firebug中得到了这些错误,我不知道它们是否相关:Uncaught InvalidStateError:无法从“XMLHttpRequest”读取“responseText”属性:只有当对象的“responseType”为“”或“text”(was“arraybuffer”)时,才可以访问该值。嘿,这对我不起作用。我尝试在我的Posts.html文件中添加一个ng repeat=“post in Posts”,以在单击按钮后收集数据,但什么也没有。奇怪的是,我在firebug中得到了这些错误,我不知道它们是否相关:Uncaught InvalidStateError:未能从“XMLHttpRequest”读取“responseText”属性:仅当对象的“responseType”为“”或“text”(was“arraybuffer”)时,才可以访问该值。
$scope.loadPosts = function() {
  $firebaseArray(ref).$loaded().then(function(posts) {
    $scope.Posts = posts;
  }, function(error) {
    alert("The Data is not loading");
  });
};