数据更改时无法动态更新视图

时间:2015-01-16 01:35:35

标签: angularjs

我在服务器中有一组文件,我正在循环并构建一个JSOn并将其另存为一个单独的文件。我正在使用python。效果很好。现在范围是目录中的文件数量将在一天内增加/更改。我每隔10分钟运行一次脚本来重写json ...文件名保持不变,我在一个页面中调用它html文档使用angular.js..Again相当简单...但是现在我遇到问题当JSON正在改变时我没有看到页面上有任何变化,除非我重新加载页面。我能为此做些什么吗?

我正在使用角度

$http('something.json').success(callback function with some argument data)

和标记类似

<ul>
<li ng-repeat="x in data">{{x.id}}</li>
</ul>

1 个答案:

答案 0 :(得分:1)

您对$ http的调用是一次性操作,在页面加载后会发生这样的操作:

&#13;
&#13;
$http('something.json').success(function(data){
    $scope.data = data;
});
&#13;
&#13;
&#13;

  • angular is kickstarted
  • ng-controller包含$ http请求被评估并请求&#39; something.json&#39;已发送
  • ...
  • 当你的json到达时,你的成功函数会被来自json
  • 的数据调用
  • view(html模板)使用新数据进行更新

Angular使您的模型(例如$ scope.data)和UI(模板中的表达式)保持最新,但它不会更新外部资源。 如果您想定期轮询&some; something.json&#39; 您可以按照$timeout中的建议使用JaKXz's comment服务。