我正在開發一個讀取Feed的基本Angular應用程序。使用Ajax調用Angular表達式進行無限循環
我在index.html中的返回值,控制器得到了點擊這個按鈕
<button ng-click="loadFeed()">Load News</button>
的問題是,如果我嘗試這樣做只是這:
{{loadFeed()}}
它會進入一個不定式循環。
Controllers.js:
myApp.controller("FeedCtrl", ['$scope','FeedService', function ($scope,Feed) {
$scope.feedSrc = "http://rss.cnn.com/rss/cnn_topstories.rss";
$scope.loadFeed=function(){
Feed.parseFeed($scope.feedSrc).then(function(res){
$scope.feeds=res.data.responseData.feed.entries;
});
}
}]);
myApp.factory('FeedService',['$http',function($http){
return {
parseFeed : function(url){
return $http.jsonp('//ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=50&callback=JSON_CALLBACK&q=' + encodeURIComponent(url));
}
}
}]);
我很抱歉,我很新與AngularJS。我看到了另一個類似的話題,但我無法解決我的問題。
一個問題可能是loadFeed()不返回任何東西。無內容顯示。也許把{{feeds}},並在你的控制器中調用$ scope.loadFeed()來初始化數據。 –
非常感謝您的回答,但我沒有感到抱歉。 feed只在loadFeed內部填充,所以我不能在調用loadFeed之前調用它,你的意思是調用$ scope.loadFeed()? – Pedro4441
也許你正在尋找的是ng-init?如果{{loadFeed()}}在每個摘要循環中都會被調用,會發生什麼情況,這會使它在你身上發癢。你的按鈕中的ng-init =「loadFeed()」會調用一次,並且{{feeds}}會被填充。 –