npm 包 redux-fetch-action 使用教程

阅读时长 6 分钟读完

随着现代 web 应用程序的复杂性增加,前端开发者需要面对更多数据管理的挑战。Redux 是一个 JavaScript 应用程序状态容器,它可以让你管理应用程序的所有状态。

redux-fetch-action 是一个可用于 Redux 的 npm 包,它可以缩短 Redux 中异步 Action Creator 的编写时间。它将使用 fetch 实现的 HTTP 请求封装成 Redux action,使得使用 Redux 进行状态管理变得更容易。

这篇文章将带领你学习如何在你的 React 应用程序中使用 redux-fetch-action,使得你的应用程序更加轻松地处理异步请求。

安装 redux-fetch-action

运行以下命令来安装 redux-fetch-action:

配置 Redux store

安装 redux-fetch-action 后,你需要在你的 Redux store 中配置它。

middleware 将自动拦截与 fetch 相关的 action,并将其转换为异步请求。

定义 Action Creator

下面是一个简单的示例,展示如何使用 redux-fetch-action 创建 Async Action Creator。

createAction 函数,接受两个参数:

  • action 的类型
  • 在成功访问 API 后返回的数据的 promise

在此示例中,action 类型是 FETCH_USERS,它将发出一个请求到 https://jsonplaceholder.typicode.com/users 并预期响应是一个 JSON 格式的集合。

如果 fetch 请求成功,它将返回一个包含响应体的 promise,reich-action 将会将此响应体传递到 reducer 中用于状态更新。

触发异步请求

通常情况下,我们会在组件中触发异步请求。

我们在组件中使用 connect 函数将 fetchUsers 添加到 Props 然后 dispatch 它。

-- -------------------- ---- -------
------ ------ - --------- - ---- --------
------ - ------- - ---- --------------
------ - ---------- - ---- -------------------

----- -------- ------- --------- -
  ------------------- -
    ----- - ---------- - - -----------
    -------------
  -

  -------- -
    ----- - ----- - - -----------
    ----- --------- - -------------- -- -
      --- --------------
        -----------
      -----
    ---

    ------ -
      ----
        -----------
      -----
    --
  -
-

----- --------------- - ----- -- --
  ------ -----------
---

----- ------------------ - -
  ----------
--

------ ------- ------------------------ ------------------------------

组件调用 fetchUsers 进行异步请求,并在 componentDidMount 生命周期方法中进行请求,当请求完成后,用户数据将会渲染到界面上。

监听请求状态

redux-fetch-action 支持 request 和 success 的状态更新。

我们可以在 reducer 里使用自动生成的 action 类型进行状态更新,在此轻松使用 redux-thunk 处理异步请求中的 request 和 success 状态:

-- -------------------- ---- -------
------ - ----------- - ---- -------------------

----- ------------ - -
  ------ ---
  ---------- -----
--

------ ------- -------------- - ------------- ------- -
  ------ ------------- -
    ---- ------------
      ------ ----------------- ------ -
        ---------- ----
      ---
    ---- ----------- - -----------
      ------ ----------------- ------ -
        ---------- ------
        ------ --------------
      ---
    --------
      ------ ------
  -
-

Conclusion

在这篇文章中,我们学习了如何使用 redux-fetch-action 更轻松地处理异步请求。你可以在你的 React 应用中使用 redux-fetch-action 并让你的异步请求更容易理解和管理,更加重要的是,使用 redux-fetch-action 能够更加规范地管理 Redux Action Creator。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6006700de361a36e0bce8ca6

纠错
反馈