我想知道是否可以使用 Dojo 取消对 Web 服务的调用。我的问题是,例如,用户在地图中有许多元素要选择,并且每次他单击其中一个元素时,都会执行对 Web 服务的调用以带来大量数据。此操作需要几秒钟的延迟。想象一下,用户几乎同时点击了五个元素:将有一个选定的元素(最后一次点击),但信息面板将定期刷新之前点击过的元素的信息,直到最后一个元素信息被加载。
我想要的是取消所有以前的电话(如果可能的话),只允许完成最后一个电话。我正在与 Dojo 合作。我看过文档,但没有看到任何有用的东西。我希望找到类似“ajax.abort()”方法的东西。
我还考虑创建一个类来管理调用并将每次调用同一个 url 添加到队列中,以便只让最后一次调用呈现数据,但通过这种方式,我仍然会等待完成每个服务调用然后丢弃结果。我认为正确的做法是取消旧电话。
有什么建议吗?谢谢。