请不要让它重复。我正面临一个大问题。我正在编写一个包含数千行代码的 JavaScript 代码。我的问题是:
methodA 从它自己的类中调用。
methodA{
doSomething(abc, def, function(obj){
obj.getName();
});
}
doSomething(abc, def, callback){
// codes....
callback(new XYZ());
}
在 XYZ 类构造函数中,我使用了几个 Jquery Deffered 对象(带有 ajax 调用)。所以我的问题是在 obj.getName()
我收到错误 this.name
没有定义。那么,当控件到达 obj.getName()
时,如何确保整个 new XYZ() 执行完全结束(所有 ajax 调用、回调等)。功能 ?
谢谢
最佳答案
您可以使用函数回调来实现此目的。 更多内容可以通过jquery deferred在google上搜索 如shown here
var jqDeferred = doSomething(abc,def,function(obj){
});
jqDeferred.done(function(){
obj.getName();
})
doSomething(abc,def,callback)
{
}
关于javascript - 如何确保一项任务仅在另一项任务结束后发生,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24261156/