AngularJS工厂服务没有向控制器返回动态数据
AngularJS Factory Service not returning dynamic data to controller
这是我的工厂服务,它正在从web服务获取数据
var customersFactory = function ($http) {
var customer = [];
var getCustomersURL = "http://localhost:50340/Services/CustomerService.asmx/GetCustomers";
customer.XMLtoJSON = function (data) {
data = data.replace('<?xml version="1.0" encoding="utf-8"?>', ''); ;
data = data.replace('<string xmlns="http://tempuri.org/">', '').replace('</string>', '');
return $.parseJSON(data);
};
customer.GetCustomers = function () {
$http.post(getCustomersURL).success(function (data, status, headers, config) {
return customer.XMLtoJSON(data);
}).error(function (ata, status, headers, config) { });
};
return customer;
};
app.factory('customersFactory', customersFactory);
现在,这个在我的控制器
中使用app.controller("CustomersController", function ($scope, customersFactory) {
var service = [];
service = customersFactory.GetCustomers();
$scope.Customers = service;
if ((typeof (service) != 'undefined') && service.length > 0) {
service.then(function (result) {
$scope.Customers = result;
});
}
});
service的值总是未定义或为空。数据没有从工厂传递到控制器。我正在调用一个简单的web服务,没有花哨的api或WCF。
如果有一些静态/虚拟数据,它工作得很好。控制器正在获取数据并显示。
我哪里做错了?
感谢您的帮助。
谢谢
将var customer = [];
改为var customer = {};
或者让它成为一个类…
将其更改为返回承诺:
customer.GetCustomers = function () {
return $http.post(getCustomersURL).error(function (data, status, headers, config) { });
};
和在控制器中的使用:
app.controller("CustomersController", function($scope, customersFactory) {
$scope.Customers = [];
customersFactory.getCustomers().success(function(data, status, headers, config) {
$scope.Customers = customersFactory.XMLtoJSON(data);
});
});
相关文章:
- 从控制器返回后Ajax启动事件激发
- 从我的控制器返回一个不同于200的代码以触发ajax错误,这被认为是一种好的做法吗
- 将从控制器返回的selectbox值动态呈现为json
- 如何从服务器端控制器返回或调用已签名的小程序的方法
- 如何从控制器返回对象列表并使用JQuery(SpringMVC,ajax)显示它们
- 无法使用.ajax调用显示MVC控制器返回的属性值
- 从ajax到控制器返回的变量为null
- 服务不会以角度向控制器返回数据
- 通过 ID 获取元素,为 Sencha 控制器返回 null
- 是否可以使控制器返回模式窗口的数据?MVC5 ASP.NET
- Laravel 5.2 - 在 ajax 请求后从控制器返回视图
- CodeIgniter - 如何从控制器返回 Json 响应
- C# mvc - 控制器返回部分视图或 json 数据
- 从控制器返回 javascript 以查看
- jQuery解析从控制器返回的JSON结果
- 控制器返回纯json数据,而不是停留在页面上
- 从 mvc 控制器返回两个 dienstional 数组作为 json
- 从控制器返回Json数据以查看ASP.NET MVC
- 使用工厂和控制器返回数据
- $http没有从Spring MVC REST控制器返回值