$ http.get方法在第二次调用时不起作用

问题描述:

在第一次加载到详细页面时工作正常。但是,如果我转到不同的页面并返回到详细信息页面,$ http.get不会获取新数据(它不会触及MVC控制器)。它显示了与以前相同的结果。

------------详细信息页面------------------------

<div ng-controller="mycontroller" ng-init="loadPage()"></div>

-----------控制器------------------

myapp.controller("mycontroller", ["$scope", function($scope){ 
    $scope.loadPage= function(){ 
     $http.get("url").success(function(data){ 
      $scope.data = data; 
}}}]); 
+0

您在您的应用程序设置来设置缓存的任何机会加入

if (!$scope.$$phase) { $scope.$apply(); }

? –

+0

谢谢。它通过禁用缓存起作用。我在这里找到了一个解决方案http://*.com/questions/12948156/asp-net-mvc-how-to-disable-automatic-caching-option – Bizzu

编辑:变通,以避免$digest already in progress错误。

在功能

+0

...它会抛出很好的“$ digest已在进行中”错误。 – dfsq

+0

真的......我用它,我得到了$摘要错误,但它仍然工作。我被告知要使用'$ timeout()',它显然最后应该有一个隐含的'$ scope.apply()',但这不起作用。 –

+0

编辑以避免$摘要错误 –