Solving generic problems with Redux
You may noticed that as your application grows, there will be common patterns in your application logic. For example, you may be doing the same kind of work for different kinds of data. With the techniques you have learned in this chapter, you can reduce code duplication by reusing the common logic by putting it into a higher-order function.
There are multiple ways to extend a Redux/React application:
- Higher-order reducers (such as
redux-undo
) - Higher-order action creators (such as generic data fetching from an API)
- Higher-order components (such as
<Provider>
) - Middleware (such as
redux-logger
)
The last concept, middleware, extends the Redux store directly, and will be discussed in the next chapter (Chapter 12, Extending the Redux Store using Middleware). The other concepts all use higher-order functions to extend Redux/React concepts, such as reducers, action creators, and components.
Higher-order reducers
As we discussed in the previous chapters, Redux reducers...