熟悉 dva 框架、Redux、 Ant Design
. State:一个对象,保存整个应用状态 . View:React 组件构成的视图层 . Action:一个对象,描述事件 . connect 方法:一个函数,绑定 State 到 View . dispatch 方法:一个函数,发送 Action 到 State
改造store.dispatch,让 store.dispatch
可以接受函数作为参数。
异步操作的解决方案,让 Action Creator
返回一个 Promise
对象。
异步操作的解决方案,store.dispatch
函数接收一个 Promise
对象作为参数。
改造store.dispatch,使得后者可以接受函数作为参数。
- 负责管理数据和业务逻辑,不负责 UI 的呈现
- 带有内部状态
- 使用 Redux 的 API
connect
connect
方法是一个高阶函数,自动生成容器组件,连接 model
和组件。
Provider
Provider
组件,可以让容器组件拿到 state
使用 redux saga 进行异步操作。 redux-saga-in-chinese
扩展 dva
的 �model
。
Reducer
reducer
是一个函数,接受 state
和 action
,返回老的或新的 state
,即:
(state, action) => state
Effect
处理异步流程,底层引入了 redux-sagas
。
app.model({
namespace: 'todos',
effects: {
*addRemote({ payload: todo }, { put, call }) {
yield call(addTodo, todo);
yield put({ type: 'add', payload: todo });
},
},
});
处理多个 className
。