Redux Toolkit 是什么?🔨

2025-06-09

Redux Toolkit 是什么?🔨

目录

简介
Redux Toolkit 包含哪些功能?
RTK 查询
RTK 查询包含哪些功能?
总结

介绍

Redux Toolkit 包被开发为编写 Redux 代码的新标准方式,处理有关 Redux 本身的三个主要问题......

  1. “配置 Redux 存储太复杂了”
  2. “我必须添加很多包才能让 Redux 做任何有用的事情”
  3. “Redux 需要太多样板代码”

这些问题取自Redux ToolKit 文档,您可以在其中进一步阅读。

需要注意的一点是,Redux 为我们提供了强大的数据获取和缓存功能。这样就无需自己创建执行相同逻辑的函数了。

使用 Redux 时,Redux Toolkit 并非必需,但我们建议使用,因为它能让您的代码更简洁、更易于维护,同时加快开发速度。该软件包适用于任何技能水平,可在开始、中间或结尾处添加。如果您计划将来使用 Redux Toolkit 软件包,我建议您在 React/Redux 应用程序中使用它,这样可以简化流程。

Redux Toolkit 包含什么?

Redux Toolkit 包含以下 API...创建这些 API 是为了提供逻辑并避免重复。

  1. 配置商店()

    • 包装 createStore 以提供简化的配置选项和良好的默认值。它可以自动组合你的切片 Reducer,添加你提供的任何 Redux 中间件,默认包含 redux-thunk,并支持使用 Redux DevTools 扩展。
  2. 创建Reducer()

    • 允许你向 case reducer 函数提供操作类型的查找表,而无需编写 switch 语句。此外,它会自动使用 immer 库,让你可以使用常规的可变代码编写更简单的不可变更新,例如 state.todos[3].completed = true
  3. 创建动作()

    • 为给定的动作类型字符串生成一个动作创建函数。该函数本身定义了 toString() 方法,因此可以代替类型常量使用。
  4. 创建切片

    • 接受一个 Reducer 函数对象、一个切片名称和一个初始状态值,并自动生成一个具有相应动作创建者和动作类型的切片 Reducer。
  5. createAsyncThunk

    • 接受一个动作类型字符串和一个返回承诺的函数,并生成一个根据该承诺分派待处理/已完成/已拒绝的动作类型的 thunk。
  6. 创建实体适配器

    • 生成一组可重复使用的减速器和选择器来管理存储中的规范化数据。
  7. 创建选择器

    • 来自 Reselect 库的实用程序,重新导出以方便使用。

RTK查询

RTK Query 是 Redux 工具包的一个可选附加组件。它旨在减轻程序员的工作负担,解决数据获取和缓存的用例。RTK Query 是一个紧凑而强大的工具集,用于为您的应用定义 API 接口层。

该工具集基于 Redux Toolkit 构建,并在其内部使用 Redux 作为其架构。RTK 查询提供了额外的全局存储管理功能。为了进一步了解 RTK 查询,建议您安装 Redux DevTools 浏览器扩展。然后,您可以检查并重放请求和缓存在执行过程中的行为。

RTK Query 已包含在 Redux Toolkit 包中。您只需添加以下代码即可:

import { createApi } from '@reduxjs/toolkit/query'

/* React-specific entry point that automatically generates
   hooks corresponding to the defined endpoints */
import { createApi } from '@reduxjs/toolkit/query/react'

Enter fullscreen mode Exit fullscreen mode

RTK 查询包含什么?

  1. 创建Api()

    • RTK Query 功能的核心。它允许您定义一组端点,描述如何从一系列端点检索数据,包括如何获取和转换该数据的配置。在大多数情况下,您应该每个应用使用一次此功能,并遵循“每个基本 URL 一个 API 切片”的经验法则。
  2. fetchBaseQuery()

    • fetch 的一个小包装器,旨在简化请求。建议大多数用户在 createApi 中使用 baseQuery。
  3. ApiProvider

    • 如果您还没有 Redux 存储,可以将其用作提供程序。
  4. 设置监听器()

    • 用于启用 refetchOnMount 和 refetchOnReconnect 行为的实用程序。

您可以在 Redux Toolkit 文档中找到更多关于RTK 查询的信息。但 RTK 查询的主要要点是……

  1. 使你的代码干燥。
  2. 您无需重新创建逻辑,从而节省时间和资源。
  3. 它可以创建更清洁、更高效的代码。

结论

Redux Toolkit 附带许多工具,可以帮您节省代码行数、时间并避免各种麻烦。但它的用途和优势在科技界引起了争议。对于一些用户来说,这个工具包非常有用,并且符合上述所有要点。然而,有些人发现它需要大量的样板代码,只会让事情变得更加混乱。想要真正了解它,唯一的方法就是亲自使用 Redux Toolkit!市面上有很多教程讲解如何使用该工具包创建小型或大型应用程序。目前尚不清楚 Redux Toolkit 是编程的又一潮流,还是会持续流行……但我们不妨趁热打铁!

鏂囩珷鏉ユ簮锛�https://dev.to/maxinejs/what-is-redux-toolkit-b94
PREV
我使用的应用程序、工具和装备
NEXT
开源 DevOps 仪表板