我正在嘗試使用可以分配給作用域角度變量的工廠。然而,每當我試圖附加這個並使用console.log來返回這個變量,我是作爲文本返回與函數,而不是一個值。有沒有一種方法可以解決這個問題?如何將函數返回到作用域變量?
========== ========== JS
annApp.factory('rssFeed', function()
{
return function()
{
var events = [];
$.get('xmlfile',
function(xml)
{
var json = $.xml2json(xml);
jsonb = JSON.stringify(json, undefined, 3);
// var events = [];
var description = json['#document']['rss']['channel']['item']['description'];
var title = json['#document']['rss']['channel']['item']['title'];
var date = json['#document']['rss']['channel']['item']['pubDate'];
events.push({'title': title, 'description':description, 'date': date});
return events;
});
return events;
}
annApp.controller('calendar', ['$scope', 'rssFeed', function($scope, rssFeed){
$scope.events = rssFeed;
console.log($scope.events);
}]);
你只是想調用rssFeed工廠並將其登錄到控制檯?在這種情況下,你需要調用函數'console.log($ scope.events());'同樣,我相信'return events;'後面的行應該是'};});' – DenimChicken
這是一個正確的小提琴返回函數:http://jsfiddle.net/HB7LU/19871/ – DenimChicken