本次更新内容
1、增加mvvm特性,修改reducer代码不再需要使用扩展符,直接改变数据即可
interface Data {
info: {
name: string;
age: number;
};
}
class Test extends Model<Data> {
runAction = this.actionNormal({
action: () => {
return this.emit();
},
onSuccess: (state, action) => {
// 只需要这一行就可以轻松改变reducer,不需要return
state.info.age = 30;
},
});
}
——————————————–
Redux模型是对原生redux的一次面向对象封装,OOP方案可以实现隐藏重复代码、提高工作效率以及减少开发时间的效果。你只需要花半个小时,就能完全了解模型的用法,并从中受益。
对比
原生redux | redux-model-ts | |
---|---|---|
写法 | 函数式 | 面向对象 |
action与reducer文件分离 | 要 | 不要 |
对ts的支持 | 一般 | 完美 |
定义types | 要 | 内置 |
异步请求 | thunk 或 saga | 内置 |
异步loading状态 | 写reducer处理 | 内置 |
代码量 | 多 | 少一半 |
转自 https://www.oschina.net/news/108515/redux-model-ts-4-2-0-released