【发布时间】:2016-05-18 14:09:46
【问题描述】:
我正在尝试使用 redux-saga 将来自 PouchDB 的事件连接到我的 React.js 应用程序,但我正在努力弄清楚如何将 PouchDB 发出的事件连接到我的 Saga。由于事件使用了回调函数(我不能将它传递给生成器),所以我不能在回调中使用yield put(),它在 ES2015 编译后(使用 Webpack)会给出奇怪的错误。
这就是我想要完成的,不起作用的部分在 replication.on('change' (info) => {}) 内部。
function * startReplication (wrapper) {
while (yield take(DATABASE_SET_CONFIGURATION)) {
yield call(wrapper.connect.bind(wrapper))
// Returns a promise, or false.
let replication = wrapper.replicate()
if (replication) {
replication.on('change', (info) => {
yield put(replicationChange(info))
})
}
}
}
export default [ startReplication ]
【问题讨论】:
标签: javascript ecmascript-6 redux redux-saga