非官方测试版翻译
本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →
compose(...functions)
概述
从右向左组合函数。
这是一个函数式编程工具,Redux 将其作为便捷功能提供。
您可以用它连续应用多个 store 增强器。compose 也可作为通用独立方法使用。
警告
通常无需直接调用 compose。Redux Toolkit 的 configureStore 方法会自动配置包含标准 applyMiddleware 和 Redux DevTools 增强器的 store,并提供 enhancers 参数来添加额外增强器。
参数
- (参数): 需要组合的函数序列。除最右侧函数外,每个函数应接受单一参数,其返回值将作为左侧函数的参数输入。最右侧函数可接受多个参数,它将决定最终组合函数的签名。
返回值
(函数): 通过从右向左组合函数得到的最终函数。
示例
此示例展示如何用 compose 增强 store,结合 applyMiddleware 和 redux-devtools 包中的开发者工具。
import { createStore, applyMiddleware, compose } from 'redux'
import { thunk } from 'redux-thunk'
import DevTools from './containers/DevTools'
import reducer from '../reducers'
const store = createStore(
reducer,
compose(applyMiddleware(thunk), DevTools.instrument())
)
使用技巧
compose的核心价值是避免深层嵌套函数导致的代码右倾问题。不必过度推崇!