javascript - 如何让 redux store 表现得像一个可观察的?

标签 javascript redux rxjs

Here ,建议使用以下代码从 Redux store 创建一个可观察流,而不是直接订阅它。

function toObservable(store) {
  return {
    subscribe({ onNext }) {
      let dispose = store.subscribe(() => onNext(store.getState()));
      onNext(store.getState());
      return { dispose };
    }
  }
}

我不知道如何将它集成到 Rx 中。如何使用这段代码实现类似 Observable.fromReduxStore 的东西?

最佳答案

对于this 已经有一个库,但是如果你想自己动手使用 RxJS。 (免责声明:未经测试)

Rx.Observable.fromReduxStore = function(store) {
  return Observable.create((observer) => {
    let dispose = store.subscribe(() => observer.next(store.getState()));
    observer.next(store.getState());
    return dispose;
  });
};

根据您使用的 RxJS v4 Observer 版本的特殊说明,使用 onNext 而 v5 使用 next

关于javascript - 如何让 redux store 表现得像一个可观察的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37232878/

相关文章:

php - 使用 FlexSlider JS 制作多个 Vimeo 视频

javascript - 当分配默认 props 时,状态不会通过 redux 改变

javascript - React Native+Redux : connect trouble

javascript - 这个 Redux 样板有什么问题?

Angular 2 Observable http 服务错误处理

javascript - 如何链接 RXJS 中的 promise 列表?

javascript - 两组大小不同的成员必须相遇(1v1,一次)

javascript - 需要运行 javascript 后从 php 加载的动态图像

javascript - 这是正确的 JavaScript 形式吗?

angular - 当组件属性在回调中更改时绑定(bind)不更新