将变量分配给嵌套的ngRepeats元素[ANGULAR]

时间:2016-12-21 17:06:10

标签: javascript angularjs scope

在我的应用中,我有文章有评论。我的问题是,每当我添加/编辑/删除评论时,我都无法更新评论范围。我希望它是动态的,以便注释范围更新,而无需页面刷新。我正在使用ngResource来查询评论和文章。 (例如$scope.articles = newsService.query())

这是我的结构

ng-repeat="article in articles"
  ng-repeat="comment in article.comments"

添加/删除/修改评论时,更新文章评论范围的一般性解决方案是什么?

注意:article.comments中的注释是对注释的引用。每条评论都引用了一篇文章。

1 个答案:

答案 0 :(得分:0)

ng-repeats的结构看起来很好。看起来有问题的是您如何获取服务数据并将其分配给$scope变量:$scope.articles = newsService.query()。因为使用ngResource获取数据是一个异步过程,所以需要使用promises处理文章的分配。

您的query方法应返回一个promise,以便您可以提供成功处理程序并在检索到数据后设置$scope变量。假设您的query方法已经返回一个承诺,您应该能够执行以下操作:

newsService.query().then(function(resp) {
    $scope.articles = resp.data;
});

如果上述方法不起作用,请发布query方法的实施。