Poi*_*poi 3 javascript reactjs redux-saga
反应版本是16.13.1。
我想知道使用 redux-saga 进行异步方法是否有一些好处。
const component = () => {
const asyncFunc = async() => { // <- this part should be moved out to redux-saga?
await callMethod();
}
return (
<div onClick={asyncFunc}>button</div>
)
}
Run Code Online (Sandbox Code Playgroud)
我不知道asyncFunc应该在 redux-saga 或 React 组件中调用它。
哪个更好或更有利?
在我看来,我更喜欢在组件中调用异步方法。
简而言之,redux-saga当我们需要在 redux 操作期间实现一些异步操作时,这是有益的。
现在您正在做的是处理组件中的副作用,因此您将分派的操作只会更新存储。
这是一个非常简单的用例,您在组件中处理它,考虑一个场景,您需要从 2 个不同的组件获得相同的功能。您将必须在 2 个不同的组件中复制逻辑。
测试将变得困难。
现在再次考虑相同的场景,但问题是因为您可以触发来自 2 个组件的 API 调用,让我们考虑用户同时触发来自两个组件的 API 调用的场景,处理这两个 API 调用会浪费资源,如果第一个 API 调用仍待处理。
对于所有这种情况,redux-saga 提供了类似的方法takeLatest,takeEvery等等。
| 归档时间: |
|
| 查看次数: |
3237 次 |
| 最近记录: |