Tag: sapui5 .when

SAPUI5等待Deferred-Object //等待.done()函数

我知道这有几个线程,但我认为在SAPUI5上下文中没有线程回答关于SAPUI5中的延迟/同步调用的这个一般主题。 在我的控制器中我得到了: test : function() { var dfd = $.Deferred(); var sServiceUrl = ‘/sap/opu/odata/sap/xyz/MySet?$format=json’; var post = $.ajax({ url: sServiceUrl, type: “GET” }); post.done(function(data){ console.log(data); dfd.resolve(); }); post.fail(function(){ console.log(“Error loading: ” + sServiceUrl); dfd.reject(); }); return dfd.promise(); }, 在我的视图中我正在调用方法并且我想等待结果,如何正确管理它? var test = oController.test(); console.log(test); $.when(test).done().then(console.log(“finished”)); 这种方法也不等待: $.when(oController.test()).then(console.log(“finished”)); 正如预期的那样,测试未定义,记录“已完成”,并且当方法中的.done准备就绪时,将记录该测试。 但我想等待它(最好从ajax返回数据) 我如何等待post.done()继续在我的视图中?