我试图理解 JavaScript 中的延迟对象。我也在使用显示模块模式,它运行良好。
我有以下引导程序代码:
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() 的“公共”函数,看起来像:
function loadAll() {
loadAllXML().done(function (xml) {
// I want to return the populated xml to the bootstrapper
});
}
返回给引导程序的值始终是未定义的。
如何修改代码以便 var result = xmlRepository.loadAll()); 有一个 xml 填充的结果?
谢谢