我是AngularJS &的新成員,處理樣本。在我的示例應用程序中,我有一個MVC Web API(它從db返回一些數據)&它將從Angular Services中調用並將數據返回給Controller。問題是我正確地獲取了我的服務成功方法中的數據,但在我的控制器中始終顯示未定義&視圖中沒有顯示任何內容。請參閱下面的代碼:AngularJS - 控制器將從服務(MVC Web API調用)返回的數據定義爲undefined
我的控制器代碼:
app.controller('CustomerController', function ($scope, customerService) {
//Perform the initialization
init();
function init() {
$scope.customers= customerService.getCustomers();
}
});
我的服務代碼:
app.service('customerService', function ($http){
this.getCustomers = function() {
$http({
method: 'GET',
url: 'api/customer'
}).
success(function (data, status, headers, config) {
return data;
}).
error(function (data, status) {
console.log("Request Failed");
});
}
});
請幫我解決這個問題。
這就是我通過調用匿名函數在成功方法中所做的。 – user972255
沒有我的回調意思是您可以讓控制器將回調傳遞到服務中並以這種方式獲取數據。但是我認爲這個承諾無論如何都是更好的選擇。 – Joseph
它說「$ q沒有定義」。我錯過了什麼嗎? – user972255