我在全局范围内有一个变量,需要定期检查是否有更改。这就是我将在简单的JS中执行的操作:

    let currentValue, oldValue;

    setInterval(()=>{
       if(currentValue != oldValue){
          doSomething();
       }
    }, 1000)

如何使用Observables完成?

最佳答案

Observable.interval(1000)
    .map(() => currentValue)
    .distinctUntilChanged();

或者,您可以选择提供比较器功能:
Observable.interval(1000)
    .map(() => currentValue)
    .distinctUntilChanged((oldValue, newValue) => <return true if equal>);

关于rxjs - 如何检测变量的变化?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41889214/

10-09 20:14