如何使用 Api-request 的结果而不将它们放入状态 React Redux Saga

how to use results from Api-request without putting them to the state React Redux Saga

我想使用从 Api 获得的结果 - 直接在 render() 中请求使用。我可以吗?

const fetchUsersFromApi = () => fetch('https://jsonplaceholder.typicode.com/users?_limit=10')

function* fetchUserWorker() {
    const data = yield call(fetchUsersFromApi)
    const json = yield call(() => new Promise(res => res(data.json())))
    yield put(setUsers(json))
}

不,你做不到。考虑到您在组件安装在函数组件的 useEffect 或 class 组件的情况下 componentDidMount 后触发 API 调用。

您需要一个状态来保存初始用户值。最初 users 将是一个 [],一旦您调用 API,您的用户可能是用户列表 [{}, {}]。现在,如果您看到这里,我们将在一段时间内将值从 [] 更改为 [{}, {}]State react 提供的就是这个目的。每当一个值在一段时间内通过 API 调用或用户交互发生变化时,它必须保存在 State 中。