【问题标题】:Generator function not called when using Firebase listner使用 Firebase 侦听器时未调用生成器函数
【发布时间】:2018-04-10 12:02:23
【问题描述】:

我正在使用 Firebase 和 Redux saga,并希望将生成器附加到 firebase 的侦听器上,如下所示。

var ref = firebase.database().ref(`path`)
ref.on('value',function* (snapshot){

    yield put({ type: 'SOME_ACTION' })

当我运行这个程序时,回调函数没有被调用。如果我删除 *,它将被调用。 有什么解决方法吗?

【问题讨论】:

    标签: reactjs firebase firebase-realtime-database redux redux-saga


    【解决方案1】:

    传奇效果不适用于所有生成器。仅在使用sagaMiddleware.runSaga() 或使用callforkspawn 等效果运行的情况下。

    解决问题的一种方法是使用事件通道,请参阅https://redux-saga.js.org/docs/advanced/Channels.html#using-the-eventchannel-factory-to-connect-to-external-events

    【讨论】:

      猜你喜欢
      • 2017-02-22
      • 1970-01-01
      • 1970-01-01
      • 2012-04-30
      • 1970-01-01
      • 1970-01-01
      • 2019-07-25
      • 2019-01-26
      相关资源
      最近更新 更多