在角度js工厂中调用ASP.NET MVC Controller Action方法时遇到麻烦。ASP.NET MVC中的Angular JS工厂5
var HomeModule = angular.module('HomeModule', []);
HomeModule.controller('HomeController', function ($scope) {
});
这是我的角JS控制器。
<div ng-app="HomeModule" class="row">
<div ng-controller="HomeController" class="row">
</div>
Index.cshtml部分代码如下所示。 当我试图从控制器绑定一些$ scope propetry时 - 是有效的。请帮我创建这样的工厂来调用我的ASP.NET控制器方法。我所有的解决方案都会在控制台中给我带来错
someControllerApp.factory('someFactory', ['$http', function ($http) {
var service = {
GetSomeData: function() {
return $http.post('/Some/SomeMethod');
},
};
return service;
}]);
错误:
angular.js:14324 TypeError: someFactory.GetSomeData(...).success is not a function
at ChildScope.$scope.GetData (HomeController.js:7)
at fn (eval at compile (angular.js:1), <anonymous>:4:141)
at callback (angular.js:26673)
at ChildScope.$eval (angular.js:17958)
at ChildScope.$apply (angular.js:18058)
at HTMLButtonElement.<anonymous> (angular.js:26678)
at defaultHandlerWrapper (angular.js:3613)
at HTMLButtonElement.eventHandler (angular.js:3601)
当控制器:
var HomeModule = angular.module('HomeModule', []);
HomeModule.controller('HomeController', function ($scope, someFactory) {
$scope.GetData = function() {
someFactory.GetSomeData().success(function (data) {
if (data.isSuccess) {
$scope.Address = data;
} else {
window.location.assign("/Error/Error500");
}
});
};
});
HomeModule.factory('someFactory', ['$http', function ($http) {
var service = {
GetSomeData: function() {
return $http.post('/Home/GetUserData');
}
};
return service;
}]);
什么是在控制台中的错误? – KieranDotCo
编辑后出现错误 –