【发布时间】:2015-10-10 07:35:08
【问题描述】:
我发现了很多关于这个问题的帖子,并尝试实施here:提出的一些解决方案
但它仍然不起作用,我想知道使用 firebase 是否会成为问题。我创建了一个链接到我的 Firebase 数据源的服务:
servicesModule.factory("postsDB", function($resource){
return $resource("https://<datasource>.firebaseio.com/Posts/:id", {
id: "@id"
},
{
update: {
method: "PUT",
isArray : true
}
});
});
然后是我的控制器:
controllersModule.controller('BlogCtrl', ["$scope", "postsDB", function($scope, postsDB) {
postsDB.query(function(posts){
$scope.myPosts = posts;
})
}]);
ng-repeat 结果:
<div class="col s12 m6" id="postItems" ng-repeat="post in myPosts">
<h3>{{post.Title}}</h3>
{{post.Body}}
{{post.Author}}
</div>
我真的不明白是什么:
错误:$resource:badcfg 响应与配置的参数不匹配
表示(与往常一样有角度错误),只是它显然需要一个数组,而我认为使用 postsDB.query 的全部目的就是为了做到这一点。我在上面添加了 isArray: true ,但它没有任何效果。如果资源以 JSON 帖子数组的形式存在,为什么我的帖子没有被加载?
【问题讨论】:
-
您将
isArray添加到update,而不是query。 See here。为什么不使用 AngularFire 或 Firebase 的库?另外,我相信您需要附加.json才能使用他们的 REST API。 -
嘿,谢谢 Anid,您应该将您的 cmets 添加为答案,以便我接受它们。将 isArray 添加到查询和将 json 添加到数据源似乎都有效。我对 Firebase/Angularfire 还不够熟悉,还不知道如何实现库,但会检查一下。