在我的应用程序中,我想定义一个处理LEFT_CHANGED
或RIGHT_CHANGED
操作的传奇,并继续执行新的操作SOURCES_CHANGED
,其中包含上述有效负载的有效负载动作。
export function* watchLeftRightChanged() {
const left = null;
const right = null;
while (true) {
const result = yield take(['LEFT_CHANGED', 'RIGHT_CHANGED'])
switch (result.type) {
case 'LEFT_CHANGED':
yield put({ type: 'SOURCES_CHANGED', result, right })
continue;
case 'RIGHT_CHANGED':
yield put({ type: 'SOURCES_CHANGED', left, result })
continue
}
}
}
问题在于left
和right
变量是null
,当SOURCES_CHANGED
动作被发出并且它们的值不被维护时(我相信这是迭代器的本质) )。
有人可以帮忙吗?感谢