Angularjs 从服务器更新后刷新ng网格时为空数据
我想在编辑或向数据库添加新数据后刷新ng网格的数据。我尝试了本页所述的解决方案。控制台上没有显示错误,表明存在问题。然而,当它触发函数时,我得到的只是ng网格中的一个空白数据,所有以前的数据都不再显示。我错过了什么?我需要你的帮助。提前谢谢 下面是函数 self.fetchDataCenter = function() { setTimeout(function(){ $http({ url:'api/centers', type:'GET'}) .success(function(dCenter) { $scope.centers = dCenter; if (!$scope.$$phase) { $scope.$apply(); } }); }, 3000); }; $scope.mySelectionsCenters = []; $scope.gridCenters = { data: 'centers', filterOptions: $scope.filterOptionsCenters, selectedItems: $scope.mySelectionsCenters, afterSelectionChange: function() { $scope.itemsCC = $scope.mySelectionsCenters; }, multiSelect: false, columnDefs: [{field:'cost_center', displayName:'Cost Center'}] }; self.fetchDataCenter=函数(){ setTimeout(函数(){ $http({ url:'api/中心', 类型:'GET'}) .成功(功能(dCenter){ $scope.centers=dCenter; 如果(!$scope.$$phase){ $scope.$apply(); } }); }, 3000); }; $scope.mySelectionsCenter=[]; $scope.gridCenters={data:'centers', filterOptions:$scope.filterOptions中心, selectedItems:$scope.mySelectionsCenter, afterSelectionChange:函数(){ $scope.itemsCC=$scope.mySelectionsCenter; }, 多选:错, columnDefs:[{字段:'cost_center',显示名称:'cost center'}] };Angularjs 从服务器更新后刷新ng网格时为空数据,angularjs,ng-grid,Angularjs,Ng Grid,我想在编辑或向数据库添加新数据后刷新ng网格的数据。我尝试了本页所述的解决方案。控制台上没有显示错误,表明存在问题。然而,当它触发函数时,我得到的只是ng网格中的一个空白数据,所有以前的数据都不再显示。我错过了什么?我需要你的帮助。提前谢谢 下面是函数 self.fetchDataCenter = function() { setTimeout(function(){ $http({ url:'api/centers',
经过3天的研究和测试,我终于能够让它工作了。我得到的一些示例要么已经过时,因此导致错误被抛出控制台。这种方法在我使用ng网格的场景中有效 我把这个功能放在控制器上
$scope.refresh = function () {
setTimeout(function(){
$http({
url:'api/centers',
method:'GET'})
.success(function(data) {
$scope.centers = data;
});
}, 100);
};
然后我必须调用函数,用数据填充ng网格
$scope.refresh();
如果要在对数据库进行更新后调用refresh函数从模式中刷新网格,则必须首先在模式配置中通过添加
scope: $scope
下面是作用域为:$scope的模式脚本
$scope.openAddCenter = function (input) {
$scope.input = input;
var modalAddCenter = $modal.open({
templateUrl: 'myModalAddCenter.html',
controller: ModalAddCenterCtrl,
scope: $scope,
resolve: {
'$modalAddCenter': function() {
return function() {
return modalAddCenter; }
},
input: function() {
return $scope.input;
}
}
});
然后,在对数据库进行必要的更新之后,在模态控制器上只需放置$scope.refresh()。这将触发重新加载数据,并使用显示的新数据重新填充ng网格
我希望这能帮助新手,节省他们宝贵的时间