0

您好我正在使用 Java Script使用 Windows 8 应用程序

function fetchFromLiveProvider(currentList, globalList,value) {
    feedburnerUrl = currentList.url,
    feedUrl = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&output=json&num=999&q=" + encodeURIComponent(feedburnerUrl);
        WinJS.xhr({url: feedUrl, responseType: "rss/json"
        }).done(function complete(result) {
                 var jsonData = JSON.parse(result.response);
                    //console.log(JSON.stringify(jsonData));
                 var entries = jsonData.responseData.feed;
               });
    }
function setOther(entries){ 
       //some code here
    }

我想做的是将 fetchFromLiveProvider 函数中的条目传递给另一个名为setOther(entries){}的函数。感谢您的任何帮助...

4

1 回答 1

0

由于 WinJS.xhr 返回一个承诺,您可以执行以下操作:

var entriesPromise = function fetchFromLiveProvider(currentList, globalList, value) {
    feedburnerUrl = currentList.url,
    feedUrl = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&output=json&num=999&q=" + encodeURIComponent(feedburnerUrl);
    return WinJS.xhr({
        url: feedUrl,
        responseType: "rss/json"
    });
}

function setOther(entries) {
    entries.done(function complete(result) {
        var jsonData = JSON.parse(result.response);
        //console.log(JSON.stringify(jsonData));
        var entries = jsonData.responseData.feed;

        //some code here
    })
}

setOther(entriesPromise);
于 2013-10-21T10:06:40.660 回答