在视图中使用值的响应数据(AngularJS)
Response data in values to use in view (AngularJS)
在控制器中调用以下服务:
//Controller
$scope.groups = CrudService.getAllGroups();
此服务返回数据库中的所有组。接下来,如下所示,服务代码:
//Service (CrudService)
function getAllGroups() {
return ResService.group.query(
successResponse,
errorResponse);
}
function successResponse(resp) {
return resp;
}
/*This part doesn't work*/
function errorResponse(error) {
return function (err) {
$scope.msgError = false;
$scope.errStatus = err.status;
$scope.statusText = err.statusText;
$scope.errMsgDetail = err.data.MessageDetail;
};
}
/**************************/
//Nested Service (ResService)
return {
group: $resource(baseUrl + '/api/group/:Id', {
Id: '@Id'
}, {}),
}
您可以在服务代码中看到,错误响应不会在视图中调用。我使用的错误消息从响应头分别后端。如果请求失败,则必须显示如下代码所示的警告框:
<div>
<alert ng-hide="msgError" type="alert alert-danger" close="closeAlert()">
<p><b>{{ statusTitle }}</b>: <i>{{ errStatus }} - {{ statusText }}</i></p>
<p><strong>{{ msgTitle }}</strong>: <i>{{ errMsgDetail }}</i> <i>{{ msgException }}</i></p>
</alert>
</div>
有人知道我如何访问或正确定义errorResponse
函数中的值吗?或者,是否有可能在服务查询中声明?
当错误函数被调用时,它除了返回另一个错误函数外什么也不做。另一个问题是它不知道上下文中的变量$scope,所以你必须传递给它:
$scope.groups = CrudService.getAllGroups($scope);
function getAllGroups($scope) {
return ResService.group.query(
successResponse,
errorResponse($scope));
}
function errorResponse($scope) {
return function(error) {
$scope.msgError = false;
$scope.errStatus = error.status;
$scope.statusText = error.statusText;
$scope.errMsgDetail = error.data.MessageDetail;
}
}
还有一个错别字,你写的是err.
,但应该是error.
。
将对象传递给名为error的参数,但随后将其引用为err。这只是个打字错误。
/*This part doesn't work*/
function errorResponse(error) {
return function (error) {
$scope.msgError = false;
$scope.errStatus = err.status;
$scope.statusText = err.statusText;
$scope.errMsgDetail = err.data.MessageDetail;
};
}
应该是:/这个部分不工作/函数errorResponse(error) {返回函数(错误){美元的范围。msgError = false;美元的范围。errStatus = error.status;美元的范围。statusText = error.statusText;美元的范围。errMsgDetail = error.data.MessageDetail;};}
相关文章:
- 如何使用Spring MVC将Facebook返回的响应数据保存在Java类中
- 如何在数据表中设置从Ajax响应选中的复选框
- 自定义验证并格式化从数据数据库返回的响应-BEGINNER
- 访问令牌和响应数据
- angular.js我如何设置数据什么是响应值
- Laravel数据表无效的JSON响应
- GCM Chrome:空数据响应
- AJAX 数据响应 - 如何解析 html
- 如何重新格式化来自 URL 的数据响应
- 如何从 ajax 请求获取数据响应
- 在数据响应中选择 #id.html
- Ajax数据响应数据未发出警报
- 使HTML表格's数据响应
- 用Javascript处理来自JSF Ajax的数据响应
- JQuery, HTML5上传器-获取上传后的数据响应
- 如何解析特定的json数据响应
- AngularJS美元范围.Push不从$http数据响应更新视图
- 如何根据本地存储的另一个数据响应延迟XMLHttpRequest
- Jquery ajax修改数据响应
- 如何将Ajax数据响应转换为字符串