Redux-saga 为什么你需要在看跌期权旁边有一个收益率



我有以下传奇

export function* login(userName, password) {
  yield put({ type: 'LOGIN_DONE', status: 'success', userName: 'test' });
  // Redirect to the landing page
  yield put(push('/location'));
}

我对以下内容感到困惑

如果我不把收益率放在第一个看跌之前,则操作不会被调度。 这是预期的行为吗?如果是,为什么? 我假设在最终看跌期权旁边有一个收益率应该就足够了,但这似乎只调度了第二个动作

谢谢

生成器函数能够暂停其进程,直到后续生成器函数终止。这是通过使用 yield 关键字实现的:

然后,中间件执行由 效果 API。同时,发电机将被暂停,直到 效果执行终止。在收到结果后 执行,中间件在生成器传递时调用 next(result( 它将检索到的结果作为参数。重复此过程,直到 生成器正常终止或通过抛出一些错误终止。

因此,在您的情况下,该操作可能会触发另一个传奇,在进入下一个产量之前可能需要完成他们的工作。如果您不放置该收益,这可能会导致后续生成器函数异步运行的副作用,并且结果不会按预期。

相关内容

最新更新