我在AngularJS中创建了以下功能
var enq_dt = new Date();
$.post("/api/EMSAPI/EnquiryDetails?enq_no="+o_enq_no, null, function (returnedData) {
enq_dt = returnedData["D_O_O"];
console.log("Loading Post Block");
console.log(enq_dt);
});
console.log("Loading General Block ");
console.log(enq_dt);
$scope.CurrentQuotation = {
EnquiryNo:o_enq_no,
EnquiryDate: enq_dt,
QuotationBy:"TEST"
};
我在控制台窗口中收到以下结果。 加载一般块 2010-11-26T00:00:00 加载帖子块 2010-12-12T00:00:00
我想首先加载Post Block,之后我想运行General Block。
我缺少什么(我是Angular的新手)?
提前致谢。
答案 0 :(得分:0)
我建议你谷歌“异步”这个词。在JavaScript中,HTTP请求之类的东西几乎总是异步的。
要在帖子后运行您的常规代码,请使用.then()
:
function generalCode() {
console.log("Loading General Block ");
console.log(enq_dt);
$scope.CurrentQuotation = {
EnquiryNo:o_enq_no,
EnquiryDate: enq_dt,
QuotationBy:"TEST"
};
}
var enq_dt = new Date();
$.post("/api/EMSAPI/EnquiryDetails?enq_no="+o_enq_no, null)
.then(function (returnedData) {
enq_dt = returnedData["D_O_O"];
console.log("Loading Post Block");
console.log(enq_dt);
})
.then(generalCode);