2.0.0 • Published 6 years ago
reducermanger v2.0.0
Redux's reducer management and leave page data destruction
(1)处理Redux的reducer集中管理的问题
(2)防止action的type重复问题
(3)离开页面再次进入该页面的数据初始化问题
├── lib
│
├── src
│
├── .babelrc
│
├── .gitignore
│
├── .npmignore
│
├── .prettierignore
│
├── .prettierrc
│
├── package.json
│
├── package-lock.json
│
└── readMe.md
Example
action.js:
import { getActionType } from 'reducermanger';
const homeType = getActionType('Home');
index.js:
import { RtRdCon, getActionType } from 'reducermanger';
const homeType = getActionType('Home');
@RtRdCon
export default class Home extends React.Component{
static mapStateToProps = (state, ownProps) => {
return {
Home: state.Home
};
};
static mapDispatchToProps = (dispatch, ownProps) => {
return {
};
};
}
reducer.js:
import { store, storeProps } from 'reducermanger';
@store
class Home {
@storeProps('change_searchForm', true)
static searchForm = {
count: 0,
pageIndex: 1,
pageSize: 100000
};
@storeProps('change_selectProjectId', true)
static selectProjectId = "";
@storeProps('change_projectList', true)
static projectList = [];
@storeProps('change_statistics', true)
static statistics = {};
@storeProps('change_projectStatistics', true)
static projectStatistics = {};
}
app.js:
import './home/reducer';
import { getStore } from 'reducermanger';
const store = createStore(getStore(), applyMiddleware(thunk));