Angularjs 角度-如何使用$resource
我有一个控制器,它可以正确地为一个有角度的用户界面工作。如何将服务器调用添加为资源Angularjs 角度-如何使用$resource,angularjs,angularjs-scope,angular-ui,Angularjs,Angularjs Scope,Angular Ui,我有一个控制器,它可以正确地为一个有角度的用户界面工作。如何将服务器调用添加为资源 var receivableApp = angular.module('receivableApp', ['ui.bootstrap', 'ngResource']) .controller('ReceivableController', function ($scope,$http) { $scope.Debtors = function (term) { return
var receivableApp = angular.module('receivableApp', ['ui.bootstrap', 'ngResource'])
.controller('ReceivableController', function ($scope,$http) {
$scope.Debtors = function (term) {
return $http.get('/Receivable/GetDebtors/?term=' + term).then(function (response) {
return response.data;
});
};
});
这将添加一个带有默认GET
的服务getdeborts
,以及其他REST处理程序
现在,要在控制器内进行呼叫,您可以执行以下操作:
debtControllers.controller('DebtCtrl', ['$scope', 'GetDebtors',
$scope.debts = GetDebtors.get({term: 'foo'});
]);
这相当于调用/receives/GetDebtors/?term=foo
如果要更改行为,可以覆盖
$resource
上的默认方法。可以找到更多详细信息。$resource用于从端点检索数据、操作数据并将其发送回
在资源上有自定义方法是可以的,但您不想错过它随OOTB.var Todo=$resource('/api/1/Todo/:id')提供的一些很酷的特性
//创建todo var todo1=新todo();
todo1.foo='bar';
todo1.something=123;
todo1.$save() 谢谢你,保罗。我真的想要一个基于我上面代码的例子。我已经看过所有Todo示例,但我需要知道如何传递参数等。这就是我在上面标记答案的原因。可以使用以下参数调用类对象或实例对象上的操作方法:HTTP GET“class”操作:Resource.action([参数],[成功],[错误])non GET“class”操作:Resource.action([parameters]、postData、[success]、[error])非获取实例操作:instance.$action([parameters]、[success]、[error])基于参数进行调用的语法
debtControllers.controller('DebtCtrl', ['$scope', 'GetDebtors',
$scope.debts = GetDebtors.get({term: 'foo'});
]);