我有一个javascript回调函数被异步调用,而不是等待一个挂起的结果。Javascript回调函数没有被正确调用
UploadMyScript.submitTitle = function(id, callback){
// contacts webservice and returns $result
createObject(id, $result);
}
function createObject(id, result){
var filename = UploadMyScript._('paraHeading_'+id).innerHTML;
var uniq_id = UploadMyScript._('paraHeading_'+id).dataset.uniq_id;
var object = new UploadMyScript.title_fileName(result, filename, uniq_id);
}
的submitTitle功能是从一个click事件称为:
subm_btn.addEventListener('click', function() {
UploadMyScript.submitTitle(this.id, createObject);
});
我知道正在返回$result
,但只有延迟之后。在返回$result
之前调用回调函数createObject()
。我不明白为什么会这样。
因为您没有使用承诺。你怎么知道函数被异步调用?看到这个例子:https://gist.github.com/jeffcogswell/8257755 –
'//联系webservice并返回$ result'似乎是这个问题的一个重要部分。你可以发布它,还是给我们一些伪代码? – CodingIntrigue
我知道结果正在通过使用console.log()返回。 – dave