compose

Redux

Getting StartedTutorialAPIFAQBest PracticesGitHubNeed help?

🌜

🌞

Search

Redux

compose(...functions)#

Composes functions from right to left.

This is a functional programming utility, and is included in Redux as a convenience. You might want to use it to apply several store enhancers in a row.

Arguments#

  1. (arguments): The functions to compose. Each function is expected to accept a single parameter. Its return value will be provided as an argument to the function standing to the left, and so on. The exception is the right-most argument which can accept multiple parameters, as it will provide the signature for the resulting composed function.

Returns#

(Function): The final function obtained by composing the given functions from right to left.

Example#

This example demonstrates how to use compose to enhance a store with applyMiddleware and a few developer tools from the redux-devtools package.

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())

)

Copy

Tips#

  • All compose does is let you write deeply nested function transformations without the rightward drift of the code. Don't give it too much credit!

Previous

« bindActionCreators

Next

Redux Toolkit: Overview »

Docs

Community

More

Redux LogoRedux Logo

Copyright © 2015–2021 Dan Abramov and the Redux documentation authors.

Last updated