多次发射多个可观察器的问题

Issues with having multiple observables firing off multiple times

本文关键字:问题 观察 发射      更新时间:2023-09-26

在Ember.js中,我有一个Controller属性函数,它调用json请求,并且它需要有多个可观测值,因为有多个条件需要更新json数据。

当只观察到一个属性发生变化时,这一点非常有效,然而,当多个属性发生改变时,这会导致json请求多次触发相同的请求。如何将此函数的触发次数限制为仅一次?

我保留了这个问题的一般性,以便将其应用于未来的其他情况,然而,如果它是相关的,我使用它的情况是在分页的情况下,我需要观察页面索引、页面大小、排序方式和排序顺序。

最简单的方法是在控制器即将发出请求时在控制器上设置一个标志,在请求完成时清除该标志,并在观察者中检查该标志以决定是否生成ajax请求。