我在durandal/breeze的一个项目上工作。我的activate
函数中有以下代码:
var activate = function (routeData) {
initLookups();
var idTran = parseInt(routeData.idTran);
var idItin = parseInt(routeData.idItin);
if (idItin == -1)
idItin = datacontext.createItineraryDetailTransport(idTran);
datacontext.getTransportById(idTran, transport);
datacontext.getItineraryById(idItin, itinerary);
}
正如您在上面的代码中看到的,我对数据上下文有 3 次调用:
- datacontext.createItineraryDetailTransport >>最终... if (idItin == -1)
- datacontext.getTransportById
- datacontext.getItineraryById
现在的问题是每个调用在执行之前都没有等待前一个调用完成。
我的问题:如何继续确保在执行下一个呼叫之前完成一个呼叫?请注意,第一个电话是在一个条件内......我正在考虑使用“承诺”,但不知道。
谢谢。