@exodus/modular-redux

中文文档
1.1.3发布于 2026/10/14MITCommonJS近 30 天下载 1.1万

Exodus 模块化 Redux 增强器

中文使用文档
文档目录11 节
  1. 目录
  2. 概览
  3. 安装
  4. 快开始
  5. 依赖关系
  6. 增强存储 API
  7. store.injectReducer(name, reducer)
  8. 用户界面
  9. bindActionCreators(store, actions, deps, onError)
  10. bindHooks(store, hooks, deps)
  11. bindSelectors(store, selectors)

@ exodus/ modular- redux

目录

概览

Redux Store 增强器支持 Redux上方的构建模块化特性.

通过Modular Redux,每个Redux模块负责在商店注册,而不是相反. 这意味着不需要导出一个还原器函数(保留这些 Redux 特定的概念). 这也使每个模块能够与不止一个状态"切片"一起工作.

安装

pnpm add @exodus/modular-redux

快开始

import modularRedux from '@exodus/modular-redux'
import { createStore, applyMiddleware } from 'redux'

const initialState = {}

const middleware = [
  /* ... middlewares */
]

const enhancers = compose(modularRedux, applyMiddleware(...middleware))

const store = createStore(reducers, initialState, enhancers)

依赖关系

Redux模块依赖于所有超出模块范围的东西的注射依赖. 例如,如果一个特定的模块需要地理定位数据,通过这个模块作为模块依赖性,而不是内部处理,可能比较明智. 特别是如果它的工作方式取决于目标应用(我们在移动中获得地理定位的方法可能不同于桌面). 这样,我们就可以开始建造小型的,可测试的和可堆肥的模块, 我们可以在整个特性中重新使用.

增强存储 API

store.injectReducer(name, reducer)

注册一个新的 Redux 状态切片 .

参数

名称说明
名称名为Redux切片。 这将在全球Redux状态中用作状态密钥
减少裁剪函数,它决定寄存器切片状态如何变异

用户界面

UTI 函数导出自 @exodus/modular-redux 将不同的逻辑块绑入 Redux 仓库

bindActionCreators(store, actions, deps, onError)

环绕 redux.bindActionCreators 将动作创建者绑定在存储和模块的依赖性上

参数

名称说明
存储Redux 仓库
动作模块动作创建者对象,每个对象的形式为: (deps) => action
代码模块依赖性。 见 依赖关系 用于模式细节.
错误处理错误函数 。 每次行动出事时都打电话. 可选

回返

绑定动作对象, 您可以从模块返回并直接调用以发送事件

bindHooks(store, hooks, deps)

将函数绑入状态变化 .

参数

名称说明
存储Redux 仓库
钩子钩子定义对象的形式 { email: [emailSelector, hookFn] }
代码模块依赖性。 见 依赖关系 用于模式细节.

bindSelectors(store, selectors)

将选择器功能转换为声明式API,以从Redux切片中读取数据.

这是一个实验性API。 出于相容性和其他相容性原因,选择器仍应从每个模块导出

参数

名称说明
存储Redux 仓库
选择器模块选择器函数对象 。 ex. (英语). { getBalaceSelector: (state) => state.balance }

回返

选择者 API. 所提供对象上的每个选择项都作为获取函数返回。 ex. (英语). { getBalaceSelector: (state) => state.balance } - > (中文) { getBalace: () => balance }

版本与发布记录

@exodus/modular-redux 共发布 8 个版本,首次发布于 2021/10/20;过去 12 个月发布了 1 个版本。

版本发布日期距今
1.1.3latest2026/10/141 个月前
1.1.22025/05/131.5 年前
1.1.12024/11/252 年前
1.1.02021/11/304 年前
1.0.02021/10/215 年前
1.0.0-rc3beta2021/10/215 年前

关于 @exodus/modular-redux 的常见问题

@exodus/modular-redux 是什么?

Exodus 模块化 Redux 增强器

如何安装 @exodus/modular-redux?

在项目目录运行 npm install @exodus/modular-redux,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:redux(*)、redux-watch(*)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@exodus/modular-redux 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/exodus__modular-redux 是否存在。

@exodus/modular-redux 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@exodus/modular-redux 可以商用吗?

@exodus/modular-redux 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@exodus/modular-redux 的下载量有多少?

根据 npm 官方下载统计,@exodus/modular-redux 在 2026/10/14 – 2026/11/12 这 30 天内被下载 10,925 次,日均约 364 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@exodus/modular-redux 还在维护吗?

最新版本 1.1.3 发布于 2026/10/14(1 个月前);至今共发布 8 个版本,其中过去 12 个月发布了 1 个;首次发布于 2021/10/20。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。