2016-03-07 56 views
0

我能够得到的第一个电话,但关闭警报$ scope.closeDialog的信息我去服务器,并获取数据,但我的模型vm.info没有得到更新的视图。 ...警报与vm.info所在的不同选项卡上(如果这有什么区别)任何想法?无法刷新视图上的数据。使用的因素,angularjs

厂内

dataFactory.getInfo= function(from, to) { 
    return $http({ 
      url: urlBase + 'GetInfo', 
      method: "GET", 
      params: { from: from, to: to } 
     }); 
    } 

我有关闭对话框警告中有一个函数。

 $scope.closeDialog = function() { 
      $mdDialog.hide(); 
      vm.info(vm.from, vm.to); 
      //window.location.reload(); 
     }; 

在我的控制器:

vm = this; 
    vm.info= function getInformation(from, to) { 
    dataFactory.getInfo(from, to) 
     .success(function (data) { 
       vm.info = data; 
     }) 
     .error(function (error) { 
       vm.status = 'Unable to load data: ' + error.message; 
     }); 
    } 

唯一的解决办法是使用windows.location.reload()。但要刷新我的屏幕上的一个项目,我必须刷新整个页面。

回答

0

那么,你是覆盖功能getInformationdatasuccess,这就是为什么它只能工作一次。

在你的控制器:

vm = this; 

vm.info; 

vm.getInfo = function(from, to) { 
dataFactory.getInfo(from, to) 
    .success(function (data) { 
      vm.info = data; 
    }) 
    .error(function (error) { 
      vm.status = 'Unable to load data: ' + error.message; 
    }); 
} 
+0

它不工作。它只会更新当前选项卡上的项目而不更新其他选项卡。 – NoviceDeveloper

+0

我找到了问题。问题在于,我在顶部的每个选项卡上都引用了我的控制器。只是FYI。 – NoviceDeveloper