UI-网格数据未更新
UI-grid data is not updating
我在我的项目中使用 ui-grid,对于 ui-grid 配置,我正在设置网格数据,如下所示:
$scope.gridOptions ={
data : $scope.data,
columnDef:$scope.couumnDefs
};
我正在这里进行服务调用,我正在从数据库获取网格,
myService.getData().then(function(data) {
var status = data.status;
if (status == 0) // success
{
$scope.data= data.gridData;
$scope.columnDef= data.gridCoulmunDef;
}
}, function(errorMessage) {
$scope.error = errorMessage;
});
但是网格数据没有更新,我想在$scope.data中做一些修改,但它没有更新,但是这里缺少angular双向数据绑定的主要概念
任何人都可以建议我需要做什么,或者我做错了什么。
提前致谢!!!!
尝试使用
$scope.gridOptions ={
data : [],
columnDef:[]
};
$scope.data=[];
$scope.couumnDefs=[];
myService.getData().then(function(data) {
var status = data.status;
if (status == 0) // success
{
$scope.data= data.gridData;
$scope.columnDef= data.gridCoulmunDef;
}
}, function(errorMessage) {
$scope.error = errorMessage;
});
$scope.gridOptions.data=$scope.data;
$scope.gridOptions.columnDef=$scope.couumnDefs;
希望对你有用。
像下面这样更新它并尝试
myService.getData().then(function(data) {
var status = data.status;
if (status == 0) // success
{
$scope.data= data.gridData;
$scope.columnDef= data.gridCoulmunDef;
$scope.gridOptions.data = $scope.data;
$scope.gridOptions.columnDef= $scope.columnDef;
}
}, function(errorMessage) {
$scope.error = errorMessage;
});
服务调用后需要重新分配coldef和data。
我不得不在几个不同的项目中解决这个问题,这个方法对我有用:
Restangular.all("block_sets/"+<%= params[:id] %> + "/addblock").customPOST(postParams
).then(function (data) {
$scope.gridOptions.data = _.map(data.array, function (d) {
return {
exampleheader: d.exampledata,
resource: d
};
});
}).then(function() {
$scope.gridApi.grid.modifyRows($scope.gridOptions.data);
$scope.gridApi.core.refresh();
});
请注意,我将 Restangular 与 Rails4 一起使用。技巧是在GridOptions中完成对数据集的应用,然后调用modifyRows()和refresh()。
我在我的项目中使用 ui-grid,对于 ui-grid 配置,我正在设置网格数据,如下所示:
$scope.gridOptions ={
data : $scope.data,
columnDef:$scope.couumnDefs
};
我正在这里进行服务调用,我正在从数据库获取网格,
myService.getData().then(function(data) {
var status = data.status;
if (status == 0) // success
{
$scope.data= data.gridData;
$scope.columnDef= data.gridCoulmunDef;
}
}, function(errorMessage) {
$scope.error = errorMessage;
});
但是网格数据没有更新,我想在$scope.data中做一些修改,但它没有更新,但是这里缺少angular双向数据绑定的主要概念
任何人都可以建议我需要做什么,或者我做错了什么。
提前致谢!!!!
尝试使用
$scope.gridOptions ={
data : [],
columnDef:[]
};
$scope.data=[];
$scope.couumnDefs=[];
myService.getData().then(function(data) {
var status = data.status;
if (status == 0) // success
{
$scope.data= data.gridData;
$scope.columnDef= data.gridCoulmunDef;
}
}, function(errorMessage) {
$scope.error = errorMessage;
});
$scope.gridOptions.data=$scope.data;
$scope.gridOptions.columnDef=$scope.couumnDefs;
希望对你有用。
像下面这样更新它并尝试
myService.getData().then(function(data) {
var status = data.status;
if (status == 0) // success
{
$scope.data= data.gridData;
$scope.columnDef= data.gridCoulmunDef;
$scope.gridOptions.data = $scope.data;
$scope.gridOptions.columnDef= $scope.columnDef;
}
}, function(errorMessage) {
$scope.error = errorMessage;
});
服务调用后需要重新分配coldef和data。
我不得不在几个不同的项目中解决这个问题,这个方法对我有用:
Restangular.all("block_sets/"+<%= params[:id] %> + "/addblock").customPOST(postParams ).then(function (data) { $scope.gridOptions.data = _.map(data.array, function (d) { return { exampleheader: d.exampledata, resource: d }; }); }).then(function() { $scope.gridApi.grid.modifyRows($scope.gridOptions.data); $scope.gridApi.core.refresh(); });
请注意,我将 Restangular 与 Rails4 一起使用。技巧是在GridOptions中完成对数据集的应用,然后调用modifyRows()和refresh()。