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
一样舒服redux-thunk
,内部实现独立的中间件,所有的 action 都是异步 actionseamless-immutable
,只需开启配置,让你的数据不可变前言 今天给大家带来一款 redux 中间件 : rc-redux-model,为你们 ✍️ 提供一种较为舒适的数据状态管理书写方式,让你简洁优雅的去开发;内部自动生成 action, 只需记住一个 action,可以修改任意的 state 值,方便简洁,从而释放你的 ⌨️ CV 键~ 源码仓库地址 : rc-redux-model ,如果你觉得不错,求个 ✨ 背景 相信大家都了解 redux
1: ASR语言模型在线训练工具 2: TTS在线语音合成工具
Redux 很大部分 受到 Flux 的启发,而最常见的关于 Flux 的抱怨是必须写一大堆的样板代码。在这章中,我们将考虑 Redux 如何根据个人风格,团队偏好,长期可维护性等自由决定代码的繁复程度。 Actions Actions 是用来描述在 app 中发生了什么的普通对象,并且是描述突变数据意图的唯一途径。很重要的一点是 不得不 dispatch 的 action 对象并非是一个样板代码
当编写< code>redux-thunk函数(称为thunks)时,有许多样板文件可以很容易地提取出来。例如,在我们的大多数异步API调用中,我们执行以下操作,没有任何副作用: 轻松点。虽然这至少涵盖了我们70%的请求,但我确信有一种优雅的方式可以将上述代码抽象为类似这样的代码(伪代码): 当我们需要检查状态和其他副作用时,我们可以返回到适当的thunk。尽管在大多数情况下...我们可以把它砍掉
本文向大家介绍Java编码辅助工具Lombok用法详解,包括了Java编码辅助工具Lombok用法详解的使用技巧和注意事项,需要的朋友参考一下 前言 在项目开发过程中,经常会涉及到一些调整很少但又必不可少的环节,比如实体类的Getter/Setter方法,ToString方法等。这时可以使用Lombok来避免这种重复的操作,减少非核心代码的臃肿,提高编码效率。 如何在IntelliJ IDEA中引
由于 Go 标准库的强大支持,Go 可以很容易的进行 Web 开发。为此,Go 标准库专门提供了 httptest 包专门用于进行 http Web 开发测试。 本节我们通过一个社区帖子的增删改查的例子来学习该包。 简单的 Web 应用 我们首先构建一个简单的 Web 应用。 为了简单起见,数据保存在内存,并且没有考虑并发问题。 // 保存 Topic,没有考虑并发问题 var TopicCach
本文向大家介绍微信跳一跳辅助Java代码实现,包括了微信跳一跳辅助Java代码实现的使用技巧和注意事项,需要的朋友参考一下 微信跳一跳辅助的Java具体实现代码,供大家参考,具体内容如下 1.参考知乎教你用Python来玩微信跳一跳,鉴于本人Python一直都是半吊子水平,之前打算用python刷分,可无奈安装python环境各种模块缺失,报错不停,于是乎,使用Java重新实现了一下。 2.环境配