我在js代码中遇到了以下问题:
doStuff() {
...
AnalyticsService.trackStuff(); // ajax call
window.location.href = url; // navigates to new page
}
导航到另一个页面时, AnalyticsService.trackStuff()
被中断。不幸的是,它在一个我无法修改的库中(否则我会在其回调中粘贴导航代码)。
有关如何防止trackStuff()
被中断的任何建议?
答案 0 :(得分:0)
如果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");
});
}
您可以找到有关承诺here的更多信息。