这是简单的问题。我正在使用angular2 +应用程序,并且单击按钮时,我正在执行HTTP Post请求,但需要一段时间才能做出响应。问题是用户在我得到响应之前多次按下按钮。我已经用传统方式弄清楚了。创建一个锁变量,确保在执行该函数之前将其设置为false,在执行该函数时将其设置为true,以便在我得到响应时将其设置回false。 但是我想知道是否存在RX智能方式?谢谢
答案 0 :(得分:2)
您的方法听起来不错。或者,您可以对发出HTTP请求的函数进行反跳操作。为此使用lodash防抖。我确实想看看是否有RxJs可以替代反跳,但没有找到。我尝试了debounceTime,但这不是我想要的行为。
答案 1 :(得分:0)
请共享代码。您可以使用RXJS共享运算符。
return this.service.pipe(
map(response=> response),
share()
);