我试图理解JavaScript中的延迟对象。我也在使用revealing module pattern,效果很好。
我有以下引导程序代码:
function bootStrapper() {
var result = xmlRepository.loadAll();
}
在xmlRepository中我有一个'私有'函数:
function loadAllXML() {
var d = $.Deferred();
$.ajax({
type: "GET",
url: "http://localhost/Autopolicy/dataSource.xml",
dataType: "xml",
success: function (xml) {
d.resolve(xml);
$xml = xml;
}
});
return d.promise();
}
然后我有一个名为loadAll()的'public'函数,看起来像是:
function loadAll() {
loadAllXML().done(function (xml) {
// I want to return the populated xml to the bootstrapper
});
}
返回到引导程序的值始终未定义。
如何修改代码以使var result = xmlRepository.loadAll());有一个xml poulated结果?
由于