我倾向于经常遇到这个问题,我的解决方案永远不会按照我想要的方式运行。 基本上,我想要一个功能等到前一个功能完全运行完毕 例如,我有一个gps定位函数,我希望在gps完成其任务后运行另一个函数。 我没有为此提供任何代码,因为我希望看到人们如何在不看我的情况下做到这一点,而是完全客观。
我正在使用phonegap,jquery-mobile和mkaing混合应用程序。
答案 0 :(得分:0)
为什么你不能这样做?
func1();
func2();
如果它比这更复杂,也许你在问题的早期某个地方搞砸了。
答案 1 :(得分:0)
您可以使用$ .Deferred:
function locate() {
var d = $.Deferred();
locationService.start().then(function(position) {
d.resolve(position);
});
return d;
}
locate().then(function(position) {
console.log('Latitude: ' + position.Latitude + ' - Longitude: ' + position.Longitude);
});
jQuery Api docs http://api.jquery.com/jQuery.Deferred/