1
ui.grid
을 사용 중이며 celledit
기능으로 고정되어 있습니다. 행은 DB에 저장되지만 아래와 같이 오류가 표시됩니다.ui.grid saveRow 이벤트가 발생하거나 아무도 이벤트를 수신하지 않거나 이벤트 핸들러가 약속을 반환하지 않을 때 약속이 반환되지 않았습니다.
angular.min.js:2 A promise was not returned when saveRow event was raised, either nobody is listening to event, or event handler did not return a promise
컨트롤러 :
$scope.saveRow = function(rowEntity) {
// create a fake promise - normally you'd use the promise returned by $http or $resource
//var promise = $q.defer();
ExpService.insertExp(rowEntity);
/*console.log(rowEntity);
$scope.gridApi.rowEdit.setSavePromise(rowEntity, promise.promise);
promise.resolve();*/
};
$scope.gridOptions.onRegisterApi = function(gridApi) {
// set gridApi on scope
$scope.gridApi = gridApi;
gridApi.rowEdit.on.saveRow($scope, $scope.saveRow);
};
ExpService :
var exp={};
exp.insertExp = function(insData){
return $http.post(config.expInsertURL, insData).then(function(repos){
return repos.data;
},function(error){
alert("Error happened while getting response \n" + error);
return "";
});
}
return exp;
사람이 문제를 해결하는 데 도움이 수 있습니까? 특히 ui.grid
설명서를 읽은 후에도 왜 해당 기능에 promise
이 필요한지 이해할 수 없습니다.