【发布时间】:2015-04-13 03:11:16
【问题描述】:
我一直在使用功能强大的 ui-router 和 angular,并广泛使用了解析功能。在我的应用程序中,我有以下状态:
.state('main.client', {
abstract: true,
url: '/:clientID',
controller: 'ClientDetailsController',
templateUrl: 'client_details.html',
resolve: {
client: function ($stateParams, ClientService) {
return ClientService.getClient($stateParams.clientID)
},
invoices: function ($stateParams, client, InvoiceService) {
return InvoiceService.getInvoices($stateParams.clientID)
},
}
解析会产生 http 请求。
现在用户点击多个客户直到他们找到他们感兴趣的客户是非常可行的。在我的测试中,客户和发票的解析被排队,即使它们可能不再与当前相关客户。 我希望能够取消/中止这些无关的 http 请求。我以前使用过以下中止逻辑http://www.bennadel.com/blog/2616-aborting-ajax-requests-using-http-and-angularjs.htm,但是由于 ui-router 等待解析完成,我不知道如何挂钩。 有人在这里取得过成功吗?
【问题讨论】: