2016-08-04 7 views
0

JSONデータを返すと、私のサービスでエラーが発生しています。ここでコードは...十分に簡単に見える!角度:JSONデータを返すとサービスにエラーが発生していますか?

var app = angular.module('easyjet', []); 

app.service('FlightsService', function($http) { 

    return { 
     'selectedResult': null, 
     'resultsData': $http.get('http://ejtestbed.herokuapp.com/flights') 
    }; 

}); 

app.controller('ResultsController', function($scope, FlightsService) { 

    // Default sort setting 
    $scope.order = "flightNumber.number"; 

    // Using service 
    $scope.flights = FlightsService; 
}); 

app.controller('DetailedFlightController', function($scope, FlightsService) { 

    // Using service 
    $scope.flights = FlightsService; 

}); 

どうすればこの問題を解決できますか?事前のおかげで

+0

エラーとは何ですか? – Rob

+0

https://docs.angularjs.org/error/filter/notarray?p0=%7B%22$$state%22:%7B%22status%22:-1%7D%7D – Nasir

+0

2番目のエラーは次のとおりです。エラー: filter:notarray 配列ではありません – Nasir

答えて

1

あなたresultsDataプロパティは、関数を返す必要はなく、$のhttpリクエスト:

の作業例:https://jsfiddle.net/yh26oey6/

return { 
    'selectedResult': null, 
    'resultsData': function() { 
    return $http.get('https://api.zippopotam.us/us/90210'); 
    } 

そして、あなたがそこに、サービスを呼んでいる方法を見ず他の問題でもあります。

+0

私が貼り付けた上記のコードを参照してくださいall in – Nasir

+0

コントローラがresultsData関数を呼び出すのではなく、単にサービスを参照しています。私の答えの中のフィドルのリンクを見て、これがどのように機能するかをよりよく理解してください。 – Rob

関連する問題