gpt4 book ai didi

redux-saga - 如何停止/结束/拆除 redux 传奇?

转载 作者:行者123 更新时间:2023-12-04 03:15:22 26 4
gpt4 key购买 nike

我的应用程序有两个部分。它们每个都有自己的 saga 中间件,但两者都不会同时实例化。它总是一个或另一个。例如,一个 saga 处理登录,另一个处理主页。

我想知道在我的应用程序的两个部分之间导航时应该如何拆除 redux 传奇。我应该让它被垃圾收集吗?但是,如果队列中还有 Action 怎么办?这些 Action 仍然需要从缓冲区中刷新。

最佳答案

您可以在位置更改时取消您的观察者。因此,您的观察者的代码将是这样的:

import { takeLatest, take, cancel } from 'redux-saga/effects';
import { LOCATION_CHANGE } from 'react-router-redux';

function* watchTheRequest() {
const watcher = yield takeLatest('SOME_TYPE', callMySaga);
yield take(LOCATION_CHANGE);
yield cancel(watcher);
}

所以当你从一个部分移动到另一个部分时,观察者将被取消。当您移动到该路线时,您可以重新注入(inject)观察者。

关于redux-saga - 如何停止/结束/拆除 redux 传奇?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41516261/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com