[英]Cannot get data from service after migrating to AngularJS 1.6.3
遷移到AngularJS 1.6.3后,我改變了我的服務,如下所示:
這是我的服務:
MetronicApp.factory('MyService', ['$http', function($http) {
return {
get: function(id, success, error) {
return $http.get(baseUrl + '/quotation/' + quotationid).then(success,error);
}
}
}]);
在ui-router中,我正在解析這樣的數據。
data: function(MyService, $stateParams) {
return MyService.get($stateParams.id);
}
但在控制器中,數據未定義。 我哪里錯了?
我們在服務部分中使用以下代碼:
get: function(){
return $http.get(url);
}
沒有應用任何回調,並在調用代碼中:
service.someMethod().then(function (result) {
var data = result.data;
}
這是因為你沒有從success
/ error
回調函數返回任何東西。 相反,我建議刪除.then(success,error);
來自get
方法。 然后從解析中調用service get方法。
data: function(MyService, $stateParams) {
return MyService.get($stateParams.id);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.