rc-redux-modelredux 样板代码辅助工具
rc-redux-model 提供了一种较为舒适的数据状态管理书写方式,让你简洁优雅地去开发;内部自动生成 action, 只需记住一个 action,可以修改任意的 state 值,方便简洁,释放你的 ⌨️ CV 键~
rc-redux-model 参考了 dva 的数据流方案,在一个 model 文件中写所有的 action
、reducer
、state
,解读了 redux-thunk
的源码,内部实现了一个中间价,同时提供默认行为 action,调用此 action 可以直接修改任意值的 state,例如 :
只需要定义一个 model
export default { namespace: 'reduxModel', state: { testA: '', testB: [], }, }
那么 rc-redux-model
会自动帮你注册 action 及 reducers,等价于 :
export default { namespace: 'reduxModel', state: { testA: '', testB: [], }, action: { settestA: ({ commit, currentAction }) => { commit({ type: 'SET_REDUXMODEL_TESTA', payload: currentAction.payload, }) }, settestB: ({ commit, currentAction }) => { commit({ type: 'SET_REDUXMODEL_TESTB', payload: currentAction.payload, }) }, // 推荐使用此action进行修改reducers值 setStore: ({ dispatch, currentAction }) => { dispatch({ type: `reduxModel/change${currentAction.payload.key}`, payload: currentAction.payload.values, }) }, }, reducers: { ['SET_REDUXMODEL_TESTA'](state, payload) { return { ...state, ...payload, } }, ['SET_REDUXMODEL_TESTB'](state, payload) { return { ...state, ...payload, } }, }, }
那么你只需要在组件中,调用的默认 Action 即可
class MyComponent extends React.Component { componentDidMount() { this.props.dispatch({ type: 'reduxModel/setStore', payload: { key: 'testA', values: '666', }, }) } }
✨ 特性
- 轻巧简洁,写数据管理就跟写
dva
一样舒服 - 异步请求由用户自行处理,内部支持 call 方法,可调用提供的方法进行转发,该方法返回的是一个 Promise
- 参考
redux-thunk
,内部实现独立的中间件,所有的 action 都是异步 action - 提供默认行为 action,调用此 action ,可以修改任意的 state 值,解决你重复性写 action 、reducers 问题
- 内置
seamless-immutable
,只需开启配置,让你的数据不可变 - 默认检测不规范的赋值与类型错误,让你的数据更加健壮
评论
iRefactoring代码重构辅助工具
每个项目都有可能出现遗留代码,或早或晚。每个类都有可能是个很大的坑,动一动就会不小心掉进去。于是人们常说:如果它还能工作,或者是不怎么需要改动,那就先不碰它。但墨菲定律总是会起作用的。那些避之唯恐不急
iRefactoring代码重构辅助工具
0
DrafteriOS 代码阅读辅助工具
Drafter是一个阅读iOS代码的辅助工具,它可以自动解析代码中类型的方法调用关系和类继承关系,自动生成流程图在浏览器中查看,支持Objective-C和Swift的解析:借助调用流程图在阅读源码的
DrafteriOS 代码阅读辅助工具
0
MaoCaiJun.Database数据库代码辅助工具
MaoCaiJun.DataBase是一个用于MicrosoftVisualStudio的数据库代码生成组件。它是基于xml文件的代码创建工具,支持sql2000,sql2005,sql2008,ac
MaoCaiJun.Database数据库代码辅助工具
0
pndaoMyBatis 辅助工具
pndao是票牛Java团队实践一年演化出来的工具。在实际生产中减少了80%以上的重复SQL编写工作,从而把关注力转移到模型本身的制定上。结合建表语句生成插件pngen,大部分场景只需编写一个模型类即
pndaoMyBatis 辅助工具
0