redux-saga cancel effect trigger error "is already running" 当它取消时。或者如何从控制台中删除此错误?
redux-saga cancel effect trigger error "is already running" while it does cancel. Or How to remove this error from the console?
几周以来我一直在努力理解为什么我的 yield cancel
在我尝试 运行 我的根传奇中的 cancel
效果时抛出错误:
export function* loginData() {
const watcher = yield fork(getLoginWatcher);
yield take(LOCATION_CHANGE);
yield cancel(watcher);
}
控制台错误:
utils.js:202 uncaught at getLogin Generator is already running"
如果我删除取消,我的 saga 不会被取消。这就像同时工作和抛出错误。
这个错误真的让我很恼火,看起来我的应用程序有问题。
执行环境:
- Debian 8 杰西
- 版本 54.0.2840.100(64 位)
- 节点 v7.2.0
- Npm 3.10.9
有没有人知道 redux-saga/effects
proc 如何处理它的 cancel
效果以及 如何 已经 运行ning 产生错误。
我认为造成这种情况的原因可能不是描述中所述的取消效果。我尝试使用 react-boilerplate 独立完成类似的登录过程,发现很多其他示例使用的方法比最新的样板代码更旧,所以一直在解决这些问题,我也得到了这个确切的错误,从调用堆栈似乎来自取消效果。
然而,当阅读与此处发布的相同问题 https://github.com/react-boilerplate/react-boilerplate/issues/1281 时,有人建议这实际上是一个错误,因为 'forwardTo' 在没有使用
的情况下被调用
yield call (forwardTo, params)
一旦我将 sagas 中的调用更改为此,错误就消失了。我认为这是解决问题的方法。其他人似乎同意 github 问题页面。
几周以来我一直在努力理解为什么我的 yield cancel
在我尝试 运行 我的根传奇中的 cancel
效果时抛出错误:
export function* loginData() {
const watcher = yield fork(getLoginWatcher);
yield take(LOCATION_CHANGE);
yield cancel(watcher);
}
控制台错误:
utils.js:202 uncaught at getLogin Generator is already running"
如果我删除取消,我的 saga 不会被取消。这就像同时工作和抛出错误。
这个错误真的让我很恼火,看起来我的应用程序有问题。
执行环境:
- Debian 8 杰西
- 版本 54.0.2840.100(64 位)
- 节点 v7.2.0
- Npm 3.10.9
有没有人知道 redux-saga/effects
proc 如何处理它的 cancel
效果以及 如何 已经 运行ning 产生错误。
我认为造成这种情况的原因可能不是描述中所述的取消效果。我尝试使用 react-boilerplate 独立完成类似的登录过程,发现很多其他示例使用的方法比最新的样板代码更旧,所以一直在解决这些问题,我也得到了这个确切的错误,从调用堆栈似乎来自取消效果。 然而,当阅读与此处发布的相同问题 https://github.com/react-boilerplate/react-boilerplate/issues/1281 时,有人建议这实际上是一个错误,因为 'forwardTo' 在没有使用
的情况下被调用yield call (forwardTo, params)
一旦我将 sagas 中的调用更改为此,错误就消失了。我认为这是解决问题的方法。其他人似乎同意 github 问题页面。