1

在我的应用程序中,我想定义一个 saga,它将处理一个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
    }
  }
}

问题在于leftright变量是nullSOURCES_CHANGED发出动作并且不维护它们的值时(我相信由于迭代器的性质)。

有人可以帮忙吗?谢谢

4

0 回答 0