在此循環中,希望得到任何幫助。嘗試從服務中的api提取數據到我的控制器中,並以ng-repeat重複返回的數據。將數據從服務返回給控制器
已經試圖用混合結果進行處理。
方法1:
廠
app.factory('getServiceData',function($http){
var getPosts = function(){
return $http.get("http://localhost:3000/posts")
.then(function(response){
console.log(response.data)
return response.data
})
}
控制器
app.controller('myCtrl',['getServiceData','$scope','$http',
function($scope,$http,getServiceData){
getServiceData.getPosts().then(function(data){
$scope.posts = data;
}).catch(function(){
$scope.error ='unable to get posts';
});
我的控制檯將返回 「供應商 'getServiceData' 必須返回一個值從$獲得工廠方法。」所以我的承諾沒有返回我可以使用的get值,但不知道如何重構。
方法2時使用的ngRoutes解決用戶導航到頁面
方法2前拉API數據:
app.factory('getServiceData',function($http){
return {
var getPosts = function(){
return $http.get("http://localhost:3000/posts")
.then(function(response){
console.log(response.data)
return response.data
})
}
};
配置:
.when('/home.html', {
templateUrl: 'app/home.html',
controller: 'myCtrl',
resolve: {
'ServiceData': function(getServiceData){
return getServiceData.getPosts();
}
}
})
第二種方法將從console.log響應中的api返回數據,但我無法在控制器中顯示它。
這就是它。我按照錯誤的順序列出了我的依賴項。謝謝!! –