首页 > 解决方案 > 在 react redux 中从 Web 服务获取值的不同方法?

问题描述

试图找到从 ReactJs、redux 中的 Web 服务获取值的最佳方法。

找到了使用 useEffects、fetch、redux-thunk、redux-saga 的方法。

但是哪个最好用..?

标签: javascriptreactjsreact-reduxredux-sagaredux-thunk

解决方案


这是一个很糟糕的问题。好吧,我什至无法解释它为什么不好。我将从这个开始,你在谈论完全不同的事情。我猜你是在问如何做出反应的网络请求。以下是您正在谈论的内容的简要说明以及使用它们的原因:

useEffect:它是 react 中的一个钩子,您可以使用它在每个渲染上运行效果(基本上是运行一个函数),或者根据状态,一些渲染。

fetch:它是一个 Web API,您可以使用它发出基于 Promise 的 ajax 请求(网络请求)。以前,我们使用基于事件的 XHR 来执行此操作。它仍然被使用,因为 fetch 不允许跟踪响应下载的下载进度。“我应该使用 fetch 还是 XHR 来发出请求”,现在这是一个很好的问题。

redux-thunk && redux-saga:现在您想将它与 redux 一起使用。在 redux 中,你可能知道,调度动作是同步的。因此,如果您想做一些异步任务并在此之后分派操作对象,请查看 redux-thunk 或 redux-saga。

所以问题不应该是“你应该使用哪些来从网络上获取东西”,因为它们不是专门用于这个目的的。


推荐阅读