Redux Saga 出错后停止

Mil*_*age 3 reactjs redux-saga react-redux

我正在组合一组来自不同模块的 Sagas(一些takeEverytakeLatest),并使用yield all(sagas)将它们全部组合在 RootSaga 中。

一切正常,没有问题。我发现了传纪本身内部的错误。但是,现在要求也是在 RootSaga 级别捕获错误,无论如何,有人会错过捕获有问题的部分。(实际上,我正在为多团队项目开发样板。)

我明白了,如果有人没有使用 try catch 来捕获有问题的部分,那么错误就会传播,之后 Saga 完全停止工作。萨加斯此后不会再看任何东西。

我想做的是,让其他 Sagas 没有问题地运行,然后 RootSaga 继续工作,照常继续观看。我怎样才能做到这一点?

export default function* rootSaga() {
    yield all(sagas);
}
Run Code Online (Sandbox Code Playgroud)

小智 5

对于 v1 使用

rootSagaTask.toPromise().catch(e => {

});
Run Code Online (Sandbox Code Playgroud)

  • 请尝试对您的解决方案给出更完整的解释!谢谢! (2认同)