显然可以发布更多代码,但无法解决为什么我的行为在这里回复我未定义?我应该在哪里将数据传递给此操作?
function* fetchInitialData(action) {
console.log(action, 'acshun'); //IS UNDEFINED HERE
try {
const dataFromFirebase = yield call(pullFromFirebase, action.data)
yield put({ type: "DATA_FETCHED_SUCCESSFULLY", data: dataFromFirebase})
}
}
function* mySaga() {
yield takeLatest("SYNC_FIREBASE_TO_STORE", fetchInitialData)
}
我的行动:
export const syncFirebaseToStore = (data) => ({
type: 'SYNC_FIREBASE_TO_STORE',
data: data
})
答案 0 :(得分:0)
始终将操作添加为take
,takeEvery
和takeLatest
定义的saga参数的最后一个参数。此代码段看起来正确。因此,您需要共享更多代码,我认为生成器是在saga中间件之外调用的,或者您没有使用redux-saga库中的takeLatest
。