我在我的js代码中遇到了以下问题:
doStuff() {
...
AnalyticsService.trackStuff(); // ajax call
window.location.href = url; // navigates to new page
}
导航到另一页时,AnalyticsService.trackStuff()
被打断了。不幸的是,它在一个我无法修改的库中(否则我会在其回调中粘贴导航代码)。
关于如何防止trackStuff()
被打断的任何建议?
如果AnalyticsService.trackStuff()
返回承诺,您可以执行以下操作:
doStuff() {
...
// ajax call
AnalyticsService.trackStuff().then(function(result) {
window.location.href = url; // navigates to new page
}, function(err) {
console.log("Oh noes! It broke");
});
}
你可以找到更多关于promises here的信息。