我的http功能工作正常,它目前在我的控制器中。我想把它做成一个工厂,所以我可以把它注入一些我需要的地方。我知道我可以在其他地方重用相同的代码,但我宁愿保持一切井井有条。现在我没有传递对象" newCivil"从控制器到工厂。 当前在控制器中工作的代码
//Post Civil Case
$scope.addCivilCase = function () {
var newCivil = $scope.newCivil
$http.post('/api/apiCivilCase/', newCivil).success(successCallback)
.error(errorCallback);
console.log(newCivil);
};
我正努力工作的代码
(function () {
angular.module('lawfirm').factory('CivilPost', function ($http) {
return {
post: function (newCivil) {
return $http.post('/api/apiCivilCase/' + newCivil);
}
};
});
})();
$scope.addCivilCase = function (newCivil) {
CivilPost.post(newCivil).success(successCallback)
.error(errorCallback);
console.log(newCivil);
};
答案 0 :(得分:1)
在您尝试使用的代码的$http.post()
中,您将newCivil
附加到网址,但您应该将其作为第二个参数传递给你可以使用有效的代码。