redux-boilerplate
Boilerplate generator for Redux
Install
$ npm install --save redux-boilerplate
Target audience
This package is aimed at projects using:
- redux
- react
- react-redux: Redux bindings for React
Examples are in ES6/7. If you are building React applications, you are highly recommended to use Babel for transpiling ES6/7 to ES5, mostly via tools like Webpack or Browserify.
API
Usage
Generating Action Creators
Redux recommends generating Action objects through a function (action creator).
Before
In action generators file, you may export some functions like this:
// file: ./actions/todos.jsconst ADD_TODO = 'ADD_TODO'; { return type: ADD_TODO text ;}
After
The code above can be written like this instead using redux-boilerplate
:
// file: ./actions/todos.js; const ADD_TODO = 'ADD_TODO'; const addTodo = ;
mapDispatchToProps()
Generating When you have smart React components (often called container components), you are expected to pass mapStateToProps
and occassionally mapDispatchToProps
functions to react-redux
's connect()
.
Before
// file: ./containers/Todos.js;; ; { return <a onClick=thisprops> Add Todo </a> ; } { return {};} { return { return ; } ;} mapStateToProps mapDispatchToPropsTodos;
After
The above code for mapDispatchToProps
can be written in a much shorter form as:
// file: ./containers/Todos.js;; ; ; // ... { return {};} const mapDispatchToProps = ; mapStateToProps mapDispatchToPropsTodos;
If you are using ES7 decorators, you could write it in a more readable form too:
// file: ./containers/Todos.js;; ; ; { return {};} const mapDispatchToProps = ; @ // ...
License
MIT © Fahad Ibnay Heylaal