Restangular:为什么帖子不更新集合?
问题描述:
比方说,我有以下...Restangular:为什么帖子不更新集合?
myService = Restangular.all('things');
myService.getList().then(
// success
function(things) {
$scope.things = things;
},
// failure
function(things) {
// do whatever, stuff failed
}
)
现在我有$scope.things
这是things
集合从API,一切都很好。
我要发布一个新thing
,并返回的承诺,所以我可以处理合格/不合格别处
return $scope.things.post(newThing) // A promise...
然而,这样做,让不会自动添加我的新thing
到$scope.things
采集。为什么不?我已经看到了链接到重新生成文档的enhanced promises部分的问题,并提到了“推送”方法,但这对我没有帮助,因为$scope.things
没有“推送”方法。
这是怎么回事?我在哪里感到困惑。
答
正如mentionned在Restangular文档:
因为Restangular返回的承诺,我们可以调用上的承诺返回的数据的方法,使我们可以承诺完成后运行的功能。例如,在我们更新一个集合后,我们可以刷新我们范围内的集合:
messages.post(newMessage).then(function(newMsg) {
$scope.messages = messages.getList();
}, function error(reason) {
// An error has occurred
});
+0
谢谢,我想我在理解promise链接时遇到了一个问题,这就是为什么这种方法看起来很奇怪,现在排序! – ptr 2014-09-26 08:49:52
有一种替代解决方案,无需使用push()方法刷新整个列表。我在类似的问题中回答了这个问题。请检查以下内容http://stackoverflow.com/a/37898582/3664759 – Kalyan 2016-06-18 15:40:39