`firebase` 在从服务器获取数据时抛出错误
`firebase` throws error on fetching data from server
我正在尝试使用 angularfire
从 firebase
获取数据,但我抛出了错误 TypeError: $firebaseArray.$loaded is not a function
。如何解决这个问题?
这是我的工厂模块:
(function () {
"use strict";
angular
.module("tcpApp")
.factory("server", ['$resource','$firebaseArray', function ($resource, $firebaseArray) {
var projectsData = new Firebase("https://tcp.firebaseio.com/projects");
$firebaseArray.$loaded(projectsData).then(function (data) {
console.log(data);
})
//return $resource('http://localhost:2403/projects/:id', {id:'@id'});
}]);
})();
这不是您初始化 $firebaseArray
的方式。相反:
var projectsData = new Firebase("https://tcp.firebaseio.com/projects");
$firebaseArray(projectData).$loaded(projectsData).then(function (data) {
console.log(data);
})
请花点时间关注 AngularFire quickstart and programming guide,因为两者都会为您节省很多解决此类问题的时间。
该文档还将显示 the best way for monitoring the loading of data。将 $firebaseArray
绑定到范围,而不是 $loaded
+console.log
:
var projectsData = new Firebase("https://tcp.firebaseio.com/projects");
$scope.projects = $firebaseArray(projectData)
然后在您的视图中 HTML,显示如下:
<pre>{{ projects | json }}</pre>
一般来说几乎不需要$loaded
。当数组的初始内容已加载时,它只会触发一次。但是 $firebaseArray
是一个同步数组,在初始加载后可能会更新多次,而 $loaded
不会为这些后续更新触发。
我正在尝试使用 angularfire
从 firebase
获取数据,但我抛出了错误 TypeError: $firebaseArray.$loaded is not a function
。如何解决这个问题?
这是我的工厂模块:
(function () {
"use strict";
angular
.module("tcpApp")
.factory("server", ['$resource','$firebaseArray', function ($resource, $firebaseArray) {
var projectsData = new Firebase("https://tcp.firebaseio.com/projects");
$firebaseArray.$loaded(projectsData).then(function (data) {
console.log(data);
})
//return $resource('http://localhost:2403/projects/:id', {id:'@id'});
}]);
})();
这不是您初始化 $firebaseArray
的方式。相反:
var projectsData = new Firebase("https://tcp.firebaseio.com/projects");
$firebaseArray(projectData).$loaded(projectsData).then(function (data) {
console.log(data);
})
请花点时间关注 AngularFire quickstart and programming guide,因为两者都会为您节省很多解决此类问题的时间。
该文档还将显示 the best way for monitoring the loading of data。将 $firebaseArray
绑定到范围,而不是 $loaded
+console.log
:
var projectsData = new Firebase("https://tcp.firebaseio.com/projects");
$scope.projects = $firebaseArray(projectData)
然后在您的视图中 HTML,显示如下:
<pre>{{ projects | json }}</pre>
一般来说几乎不需要$loaded
。当数组的初始内容已加载时,它只会触发一次。但是 $firebaseArray
是一个同步数组,在初始加载后可能会更新多次,而 $loaded
不会为这些后续更新触发。