jQuery 経由で promise を使用するように移行しようとしています。元のコードには、変更されたデータを受け取るコールバック パラメーターがあります。
var getRss = function (url, fnLoad) {
$.get(url, function (data) {
var items = [];
$(data).find('item').each(function (index) {
items.push({
title: $(this).find('title').text(),
pubDate: $(this).find('pubDate').text()
});
});
fnLoad(items);
});
}
約束に変更しようとしましたが、「完了」は解析されたデータではなく、変更されていないデータを返します。
var getRss = function (url) {
return $.get(url).done(function (data) {
var items = [];
$(data).find('item').each(function (index) {
items.push({
title: $(this).find('title').text(),
pubDate: $(this).find('pubDate').text()
});
});
});
}
次に、以下のように使用しますが、オブジェクトに変換された変更されたものではなく、元の XML バージョンを取得します。
getRss('/myurl').done(function (data) {
$('body').append(template('#template', data));
});